微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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 . "
";
return false;
}
}
}

//指定判断的值
$num1 = '15';
//运行校验方法
check_num($num1);
?>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐