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

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО

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

#1 13 мая 2016 в 12:51
Привет!

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

Вам нужно передавать переменную $title внутрь анонимной функции примерно таким образом:
  1. 'generator' => function($item) use($title) {
Сам не знал, только что выяснил. 😊
А вот что в таком случае подставляется в параметр функции $item я пока не понял. Может кто-то объяснит или даст ссылку где почитать?
#3 15 мая 2016 в 12:05

А вот что в таком случае подставляется в параметр функции $item

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


А вот что в таком случае подставляется в параметр функции $item

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

WebMan

Спасибо!
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.