我正在使用zend dojo表单,并希望填写1911年至2011年的comboselect选项。 我在php手册中查找了这个函数以自动填充,但它在ZF dojo表单中不起作用。 我收到此错误消息
解析错误:第13行的Signup.php中的语法错误,意外'(',期待','或';'
//options declaration
protected $_yearOptions = array_fill(
1911,101,'year');
//adding combo element
$this->addElement(
'ComboBox',
'comboyr',
array(
'label' =>'Birthyear',
'value' =>'',
'autocomplete' => false,
'multioptions' => $this->_yearOptions,
)
);
答案 0 :(得分:0)
Signup.php文件中的第13行必须是受保护的$ _yearOptions属性。在类中设置属性时,不能使用函数。你必须这样做:
protected $_yearOptions = array();
protected function _getYearOptions () {
if ( empty($this->_yearOptions) ) { $this->_yearOptions = array_fill(1911,101,'year'); }
return $this->_yearOptions;
}
然后在你的addElement中你会有这一行而不是
'multioptions' => $this->_getYearOptions(),
你也可以使用与array_fill不同的东西。我不认为结果是你想要的。