Проверка формата даты с помощью Zend_validator
Как я могу проверить формат даты (дд-мм-гггг), используя zend_validate?
3 ответа
Решение
Вы просто используете валидатор даты (Zend_Validate_Date
).
Например
$validator = new Zend_Validate_Date(array(
'format' => 'dd-mm-yyyy',
'locale' => $yourLocale
);
Вот как я это сделал,
$DateFormat = new \Zend\Validator\Date(array('format' => 'Y-m-d'));
if(!($DateFormat->isValid($somedate))){
//if not valid do something
}else{
//do something else
}
я забыл упомянуть, что это для Zend 2.0
В настоящее время невозможно выполнить проверку по точному формату даты в /questions/tagged/zendframework2 (см. ZF2 Issue # 4763), но вы можете добавить дополнительный валидатор регулярных выражений (см. Пример здесь) или написать собственный валидатор для обработки этого (см. Zf2 Issue).
use Zend\Validator\Date;
use Zend\Validator\Regex;
$validator = new Date(array(
'format' => 'd-m-Y',
));
$validator2 = new Regex(array(
'pattern' => '%[0-9]{2}-[0-9]{2}-[0-9]{4}%',
));