欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

zf框架的校验器使用使用示例(自定义校验器和校验器链)_php实例

程序员文章站 2024-02-20 11:29:52
...
复制代码 代码如下:

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);
?>

相关标签: zf框架 校验器