温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Zend_Validate如何在Zend Framework中使用

发布时间:2021-04-01 17:06:27 来源:亿速云 阅读:170 作者:Leah 栏目:开发技术

本篇文章给大家分享的是有关Zend_Validate如何在Zend Framework中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

是对输入内容进行检查,并生成一个布尔结果来表明内容是否被成功校验的机制。

如果isValid()方法返回False,子类的getMessage()方法将返回一个消息数组来解释校验失败的原因。

为了正确地返回消息与错误内容,对于isValid()方法的每次调用,都需要清除前一个isValid()方法调用所导致的消息和错误。

案例:

<?php require_once 'Zend/Validate/EmailAddress.php'; function c_email($email) {   $validator = new Zend_Validate_EmailAddress();   if($validator->isValid($email)){     echo "输入的E-mail地址:";     echo $email."有效!<p>";   }else{     echo "输入的E-mail地址:";     echo $email."无效!";     echo "失败消息为:<p>";     foreach($validator->getMessages() as $message){       echo $message."<p>";     }     foreach($validator->getErrors() as $error){       echo $error."<p>";     }   } } $e_m1 = "abc@123.com"; $e_m2 = "abc#123.com"; c_email($e_m1); c_email($e_m2);

结果:

输入的E-mail地址:abc@123.com有效!
输入的E-mail地址:abc#123.com无效!失败消息为:
'abc#123.com' is not a valid email address in the basic format local-part@hostname
emailAddressInvalidFormat

说明:

在引入类之后,定义一个验证函数,在函数中实例化类。用isValid()方法来进行验证,不同的子类验证器验证的内容是不一样的。
同时通过getMessages()方法和getErrors()方法来。

源码赏析:

public function isValid($value) {     if (!is_string($value)) {       $this->_error(self::INVALID);       return false;     }     $matches = array();     $length = true;     $this->_setValue($value);     // Split email address up and disallow '..'     if ((strpos($value, '..') !== false) or       (!preg_match('/^(.+)@([^@]+)$/', $value, $matches))) {       $this->_error(self::INVALID_FORMAT);       return false;     }     $this->_localPart = $matches[1];     $this->_hostname = $matches[2];     if ((strlen($this->_localPart) > 64) || (strlen($this->_hostname) > 255)) {       $length = false;       $this->_error(self::LENGTH_EXCEEDED);     }     // Match hostname part     if ($this->_options['domain']) {       $hostname = $this->_validateHostnamePart();     }     $local = $this->_validateLocalPart();     // If both parts valid, return true     if ($local && $length) {       if (($this->_options['domain'] && $hostname) || !$this->_options['domain']) {         return true;       }     }     return false; }

以上就是Zend_Validate如何在Zend Framework中使用,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI