в конструкторе укажите класс и сервис-контейнер завтовайрит его
class DocumentRepository
{
/**
* DocumentRepository constructor.
*
* @param Document $model
*/
public function __construct(Document $model)
{
$this->model = $model;
}
function foo(bar $bar) {
$bar->do();
class UserController extends Controller
{
public function __construct(UserRepository $userRepository)
{
$this->userRepository = $userRepository;
}
class UserRepository extends BaseRepository
{
public function __construct(User $model)
{
$this->model = $model;
}
public function store(StoreUserRequest $request)
{
$this->userRepository->create(....);
}
public function __construct()
{
$this->userRepository = resolve(UserRepository::class);
}
class UserRepository extends BaseRepository
{
public function __construct(User $model)
{
$this->model = $model;
}
К контейнеру он не имеет отношения вообще.разве в сервис-контейнер экземпляры объектов попадают на начальном этапе не через сервис-провайдеры?
этот механизм работает только для контроллеров?- нет, почему? Это механизм PHP.
разве в сервис-контейнер экземпляры объектов попадают на начальном этапе не через сервис-провайдеры?
- нет, почему? Это механизм PHP.я имел в виду механизм внедрения зависимостей.
Не-а.а как? Сервис провадер имеет метод register, который добавляет через bindIf в контейнер app экземпляр необходимого объекта.
я имел в виду механизм внедрения зависимостей.
который добавляет через bindIf в контейнер app экземпляр необходимого объекта.
экземпляр необходимого объекта.