Я использую Zend Framework 1.12.3 для разрабатываемого мной проекта.
Я использую ввод фильтра и мне нужно убедиться, что значение находится в пределах определенных значений (ENUM). (например, частота должна быть мгновенной, ежедневной или еженедельной).
Как я могу этого добиться?
Благодарность
2 ответа
Лично я бы использовал валидатор для этого
$validator = new Zend_Validate_InArray(array('ENUM1' => 'value 1',
'ENUM2' => 'value 1',
'ENUM3' => 'value 3'));
$element->addValidator($validator);
Если я правильно вас понял, вы можете выглядеть примерно так: - Вы можете использовать валидаторы формы ввода, если значение должно быть среди определенного значения.
// создаем ввод текста для возраста // должен содержать только целочисленные значения от 1 до 100
$age = new Zend_Form_Element_Text('age');
$age ->setLabel('Age:')
->setOptions(array('size' => '4'))
->setRequired(true)
->addValidator('Int') //must be an Integer
->addValidator('Between', false, array(1,100)); //from 1 to 100
То же самое, но только с использованием класса Zend_Validate.
// create text input for age
// should contain only integer values between 1 and 100
$age = new Zend_Form_Element_Text('age');
$age->setLabel('Age:')
->setOptions(array('size' => '4'))
->setRequired(true)
->addValidator(new Zend_Validate_Int())
->addValidator(new Zend_Validate_Between(1,100));
Похожие вопросы
Новые вопросы
zend-framework
Zend Framework - это объектно-ориентированная среда веб-приложений с открытым исходным кодом, реализованная в PHP 7.1 и лицензированная по новой лицензии BSD. Zend Framework был заархивирован 1 января 2020 года одновременно с миграцией и запуском Laminas Project, официального продолжения под управлением The Linux Foundation.