復制代碼 代碼如下:
<?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);
?>