Так что я в основном хочу сделать это:параметры Пасс в Pimple-> container-> завод
$this->container['Menu_builder'] = $this->container->factory(function ($c) {
return new Menu_builder($parameter_1, $parameter_2);
});
Где $parameter_1
и $parameter_2
передаются в от вызова, например:
$menu_builder = $this->container['Menu_builder']('account', 'reset_password');
I знать, что приведенный выше синтаксис неверен, но я хочу передать эти строки в вызов $this->container->factory
.
Возможно ли это?
Например, если бы я хотел создать экземпляр Menu_builder из различных функций контроллера с различными параметрами для каждой функции контроллера.
Итак, ваша проблема в том, что '$ parameter_1' /' _2' находятся вне области видимости в вашей анонимной функции? – Rizier123
Да, именно так, как вы их проходите? Надеюсь, я не нашел один случай использования Pimple, который вы не можете сделать! –
Ну, у вас уже есть свой ответ в вашем комментарии^:) 'use', например. 'function ($ c) use ($ parameter_1, $ parameter_2) {' – Rizier123