Я не использую полную установку ZF2, только модули, которые я указал, в том числе zendframework/zend-form
От formselect:
use Zend\Form\Element;
$element = new Element\Select('language');
$element->setValueOptions(array(
'0' => 'French',
//...
'3' => 'Chinese'
));
echo $this->formSelect($element);
Проблема:
когда в non-view PHP:
PHP error: Call to undefined method formSelect()
когда в * .phtml просмотреть файл:
Uncaught exception 'Zend\ServiceManager\Exception\ServiceNotFoundException'
with message 'Zend\View\HelperPluginManager::get was unable to fetch
or create an instance for formselect'
Замечания:
$this->partial()
работает, как и $this->escapehtml()
, но $this->formselect()
не
Найден обходной путь — должен быть сделан вне файла просмотра (phtml):
use Zend\Form\View\Helper\FormSelect;
$form = new FormSelect();
$selectHtml = $form->render($element);
//then
echo $selectHtml;
//or from view:
$this->partial($file, array('select' => $selectHtml));
Других решений пока нет …