Приветствую. Работаю над проектов в Laravel. У меня имеется вспомогательный класс, который делатет некоторую работу с данными, а также работает с БД (с помощью ORM-модели). Сейчас я реализовал вспомогательный класс примерно так:
Вспомогательный класс:
class MyHelperClass
{
private $model;
private $data;
/**
* @param $data
* @param SpecificModel $model
*/
public function __construct($data, SpecificModel $model)
{
$this->model = $model;
$this->data = $data;
}
public function doWork()
{
$concreteModel = $this->model->find(123);
$concreteModel2 = $this->model->find(456);
// какой то код, работающий с моделью...
$concreteModel->save();
$concreteModel2->delete();
}
}
Где-то в коде:
// SpecificModel - ORM модель
$helper = new MyHelperClass([1, 2, 3, 4], new SpecificModel());
$helper->doWork();
Нормальный ли это подход:? Или можно создавать объект прямо в хелпере без передачи его как аргумент конструктора?