Задаю элемент формы таким образом:
$select = array();
foreach ($cFields["contents"] as $variant) {
$select[$variant] = $variant;
}
$form->add(array(
'type' => 'Zend\Form\Element\Select',
'name' => $field['name'],
'options' => array(
'label' => $field['title'],
'empty_option' => 'Выбрать из списка',
'value_options' => $select,
),
));
Далее, при сабмите:
...
$form = $this->getProfileForm();
$form->setData($this->request->getPost());
$form->setInputFilter(new \Zend\InputFilter\InputFilter());
if ($form->isValid()) {
...
В этом месте валидация не проходит, ругается на селекты: "Поле обязательное и не может быть пустым". Если задать в селектах значение - все норм.