Zend framework 将变量传递给viewScript装饰器
我曾尝试使用Zend表单的viewScript装饰器向表单中添加一个分部,但是我似乎无法将变量传递给分部。这是我的密码: 在控制器中,我添加以下表单:Zend framework 将变量传递给viewScript装饰器,zend-framework,arguments,zend-form,partial,zend-decorators,Zend Framework,Arguments,Zend Form,Partial,Zend Decorators,我曾尝试使用Zend表单的viewScript装饰器向表单中添加一个分部,但是我似乎无法将变量传递给分部。这是我的密码: 在控制器中,我添加以下表单: $form = new Content_Form_ContentForm(array("categories" => $sortedCategories)); $form->submit_button->setLabel("Add content"); $this->view->form = $form; 然后在表
$form = new Content_Form_ContentForm(array("categories" => $sortedCategories));
$form->submit_button->setLabel("Add content");
$this->view->form = $form;
然后在表单中添加viewscript:
public function setCategories($categories) {
$this->setDecorators(array(array('ViewScript', array(
'viewScript' => 'partials/dtreePartial.phtml',
'List'=>"{$categories}",
))));
}
我已经尝试使用print\r($this->getDecorator('ViewScript')->getOptions()打印视图脚本的选项代码>将生成数组([viewScript]=>partials/dtreePartial.phtml[List]=>Array)
但是,当我全部运行它时,脚本返回一个关于列表不存在的错误
我有一种感觉,我错过了一些东西,但我不确定它是什么。任何建议或解决方案都将不胜感激!:) 问题在于这一行:
'List'=>"{$categories}",
因为将变量放在引号内,所以它将转换为字符串。在PHP中,将数组强制转换为字符串时,结果总是单词array
只需更改为:
'List'=> $categories,
而且它应该像你期望的那样工作。我想我需要买眼镜:)谢谢你的帮助