Параметр в форме не работает

Передаваемый параметр в форме не работает

 
Посетитель
small user social cms
Медаль
Сообщений: 232
Привет!

В форму передаю параметр:
Код PHP:
  1. $form = $this->getForm('name', array($title));
В форме:
Код PHP:
  1. ublic function init($title)
Но в коде ниже, параметр не работает:
Код PHP:
  1.  
  2. 'generator' => function($item) {
  3.  
  4. $model = cmsCore::getModel('test');
  5.  
  6. $test = $model->
  7. filterEqual('test', $title)->
  8. gettest();
  9.  
  10. }
  11.  
Почему?
Посетитель
small user social cms
МедальПочетный донор проекта
Сообщений: 560
Потому, что внешняя (по отношению к функции) переменная $title внутри функции не видна. Область видимости переменной

Вам нужно передавать переменную $title внутрь анонимной функции примерно таким образом:
Код PHP:
  1. 'generator' => function($item) use($title) {
Сам не знал, только что выяснил. smile
А вот что в таком случае подставляется в параметр функции $item я пока не понял. Может кто-то объяснит или даст ссылку где почитать?
Редактировалось: 1 раз (Последний: 15 мая 2016 в 11:25)
Реклама
cms
Посетитель
small user social cms
МедальПочетный донор проекта
Сообщений: 560
WebMan:
А вот что в таком случае подставляется в параметр функции $item
Разобрался. Может кому-то будет полезно. В $item анонимной функции-генератора автоматически передаётся массив со значениями всех полей формы.
Посетитель
small user social cms
Медаль
Сообщений: 232
WebMan:

WebMan:
А вот что в таком случае подставляется в параметр функции $item
Разобрался. Может кому-то будет полезно. В $item анонимной функции-генератора автоматически передаётся массив со значениями всех полей формы.

Спасибо!
В начало страницы
Предыдущая темаСледующая тема Перейти на форум: