从输入中获取价值 select Zend Framework 3

Getting value from input select Zend Framework 3

如何从 ZF3 中的输入 select 获取值?

$education = $form->get('education');
$education->setValueOptions([
     '1' =>'option 1',
     '2' => 'option 2',
]);

returns 整数值 1,2,不是 'option 1' 或 'option 2'

即使我删除索引并留下如下代码

$education->setValueOptions([
     'option 1',
     'option 2',
]);

不行,returns同上。

但是如果我这样修改代码

$education->setValueOptions([
     'option 1' => 'anything'
     'option 2' => 'anything'
]);

它 returns 将值更正为 'option 1' 或 'option 2'。

是正确的,还是我做错了什么?

你想错了。例如:

$education->setValueOptions([
     'array_key' => 'array_value'
]);

在 PHP 中,此数组的值将是 array_value,而 array_key 将是键。 zend中的逻辑翻译到前端时正好相反。在前端,array_key 将是 <option> 值,而 array_value 将是 <option> 标签。

上面的代码在前端会翻译成下面的代码

<option value="array_key">array_value</option>