ZF框架校验器的使用[自定义校验器与校验器链]
作业练习
作业练习
<?php require_once("Zend/Loader.php"); //引入校验器类和效验器的功能类(Int),与自定义接口类; Zend_Loader::loadClass('Zend_Validate'); Zend_Loader::loadClass('Zend_Validate_Int'); Zend_Loader::loadClass('Zend_Validate_Interface'); //增加自定义校验器功能类(GongBeiNum)[公倍数] Class GongBeiNum implements Zend_Validate_Interface { //声明接口里的错误信息报告属性 protected $_messages = array(); //声明接口里的校验方法 public function isValid($num) { if (!($num%3==0) && !($num%5==0)) { //如果校验失败,则讲错误信息返回值给错误信息报告属性 $this -> _messages[] = "你所输入的数值不是3和5的公倍数!"; //终止程序 return false; } //返回真 return true; } //定义接口的报错方法 public function getMessages() { return $this -> _messages; } //定义提取错误信息(可无) public function getErrors() { } } //类外定义检测公倍数方法 function check_num($num) { //实例化校验器类 $Validate = new Zend_Validate(); //添加校验器功能功能类、添加自定义校验器功能类,形成校验器链 $Validate -> addValidator(new Zend_Validate_Int()) -> addValidator(new GongBeiNum()); //校验参数 if (!$Validate -> isValid($num)) { //如果错误循环错误信息并输出 foreach ($Validate -> getMessages() as $value) { echo $value . "<br>"; return false; } } } //指定判断的值 $num1 = '15'; //运行校验方法 check_num($num1); ?>
- 上一篇:PHP 字符串截取,支持中文和其他编码
- 下一篇:ZF框架校验器InArray的使用
精彩图集
精彩文章