這篇文章主要介紹了zf框架的校驗(yàn)器使用使用示例(自定義校驗(yàn)器和校驗(yàn)器鏈),需要的朋友可以參考下
代碼如下:
<?php
require_once("Zend/Loader.php");
//引入校驗(yàn)器類和效驗(yàn)器的功能類(Int),與自定義接口類;
Zend_Loader::loadClass('Zend_Validate');
Zend_Loader::loadClass('Zend_Validate_Int');
Zend_Loader::loadClass('Zend_Validate_Interface');
//增加自定義校驗(yàn)器功能類(GongBeiNum)[公倍數(shù)]
Class GongBeiNum implements Zend_Validate_Interface
{
//聲明接口里的錯(cuò)誤信息報(bào)告屬性
protected $_messages = array();
//聲明接口里的校驗(yàn)方法
public function isValid($num)
{
if (!($num%3==0) && !($num%5==0))
{
//如果校驗(yàn)失敗,則講錯(cuò)誤信息返回值給錯(cuò)誤信息報(bào)告屬性
$this -> _messages[] = "你所輸入的數(shù)值不是3和5的公倍數(shù)!";
//終止程序
return false;
}
//返回真
return true;
}
//定義接口的報(bào)錯(cuò)方法
public function getMessages()
{
return $this -> _messages;
}
//定義提取錯(cuò)誤信息(可無)
public function getErrors()
{
}
}
//類外定義檢測(cè)公倍數(shù)方法
function check_num($num)
{
//實(shí)例化校驗(yàn)器類
$Validate = new Zend_Validate();
//添加校驗(yàn)器功能功能類、添加自定義校驗(yàn)器功能類,形成校驗(yàn)器鏈
$Validate -> addValidator(new Zend_Validate_Int())
-> addValidator(new GongBeiNum());
//校驗(yàn)參數(shù)
if (!$Validate -> isValid($num))
{
//如果錯(cuò)誤循環(huán)錯(cuò)誤信息并輸出
foreach ($Validate -> getMessages() as $value)
{
echo $value . "<br>";
return false;
}
}
}
//指定判斷的值
$num1 = '15';
//運(yùn)行校驗(yàn)方法
check_num($num1);
?>
更多信息請(qǐng)查看IT技術(shù)專欄