Heim  >  Artikel  >  Backend-Entwicklung  >  ZF框架校验器的使用[自定义校验器与校验器链]

ZF框架校验器的使用[自定义校验器与校验器链]

WBOY
WBOYOriginal
2016-07-25 08:48:40861Durchsuche
作业练习
  1. require_once("Zend/Loader.php");
  2. //引入校验器类和效验器的功能类(Int),与自定义接口类;
  3. Zend_Loader::loadClass('Zend_Validate');
  4. Zend_Loader::loadClass('Zend_Validate_Int');
  5. Zend_Loader::loadClass('Zend_Validate_Interface');
  6. //增加自定义校验器功能类(GongBeiNum)[公倍数]
  7. Class GongBeiNum implements Zend_Validate_Interface
  8. {
  9. //声明接口里的错误信息报告属性
  10. protected $_messages = array();
  11. //声明接口里的校验方法
  12. public function isValid($num)
  13. {
  14. if (!($num%3==0) && !($num%5==0))
  15. {
  16. //如果校验失败,则讲错误信息返回值给错误信息报告属性
  17. $this -> _messages[] = "你所输入的数值不是3和5的公倍数!";
  18. //终止程序
  19. return false;
  20. }
  21. //返回真
  22. return true;
  23. }
  24. //定义接口的报错方法
  25. public function getMessages()
  26. {
  27. return $this -> _messages;
  28. }
  29. //定义提取错误信息(可无)
  30. public function getErrors()
  31. {
  32. }
  33. }
  34. //类外定义检测公倍数方法
  35. function check_num($num)
  36. {
  37. //实例化校验器类
  38. $Validate = new Zend_Validate();
  39. //添加校验器功能功能类、添加自定义校验器功能类,形成校验器链
  40. $Validate -> addValidator(new Zend_Validate_Int())
  41. -> addValidator(new GongBeiNum());
  42. //校验参数
  43. if (!$Validate -> isValid($num))
  44. {
  45. //如果错误循环错误信息并输出
  46. foreach ($Validate -> getMessages() as $value)
  47. {
  48. echo $value . "
    ";
  49. return false;
  50. }
  51. }
  52. }
  53. //指定判断的值
  54. $num1 = '15';
  55. //运行校验方法
  56. check_num($num1);
  57. ?>
复制代码


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:PHP工具类 Nächster Artikel:ZF框架Db类状态器简单用法