zend-framework – 使用Zend Framework验证日期是否大于或等于今
发布时间:2020-12-13 21:36:10 所属栏目:PHP教程 来源:网络整理
导读:$form = new Zend_Form();$mockDate = new Zend_Form_Element_Text('mock');$mockDate-addValidator(???????);$form-addElements(array($mockDate));$result = $form-isValid();if ($result) echo "YES!!!";else echo "NO!!!"; 假设元素采用日期格式.如何确
$form = new Zend_Form(); $mockDate = new Zend_Form_Element_Text('mock'); $mockDate->addValidator(???????); $form->addElements(array($mockDate)); $result = $form->isValid(); if ($result) echo "YES!!!"; else echo "NO!!!"; 假设元素采用日期格式.如何确定给定的日期大于或等于今天? 解决方法
您可以创建一个简单的验证器来执行此操作:
class My_Validate_DateGreaterThanToday extends Zend_Validate_Abstract { const DATE_INVALID = 'dateInvalid'; protected $_messageTemplates = array( self::DATE_INVALID => "'%value%' is not greater than or equal today" ); public function isValid($value) { $this->_setValue($value); $today = date('Y-m-d'); // expecting $value to be YYYY-MM-DD if ($value < $today) { $this->_error(self::DATE_INVALID); return false; } return true; } } 并将其添加到元素: $mockDate->addValidator(new My_Validate_DateGreaterThanToday()); 您可能希望使用 要创建自定义验证,请查看Zend手册中的writing validators. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |