zoukankan      html  css  js  c++  java
  • filter_var() 验证邮箱、ip、url的格式 php

    验证邮箱格式的正确与否;你的第一解决方案是什么呢?

    不管你们怎么思考的;反正我首先想到的就是字符串查找看是否有@符号;

    但是对于结尾的.com或者.net 亦或者.cn等等越来越多的域名验证感觉棘手;

    直到了某一天认真的研究了filter_var()函数的参数;

    我对以前走马观花式的阅读php文档表示深深的惭愧;

    其实filter_var()第二个参数传FILTER_VALIDATE_EMAIL即可验证邮箱、略加整理就如下;

    1.  
      /**
    2.  
       * 验证是否是邮箱
    3.  
       * @param  string  $email 邮箱
    4.  
       * @return boolean        是否是邮箱
    5.  
       */
    6.  
      function is_email($email){
    7.  
          if(filter_var($email,FILTER_VALIDATE_EMAIL)){
    8.  
              return true;
    9.  
          }else{
    10.  
              return false;
    11.  
          }
    12.  
      }
    13.  
       
    14.  
      var_dump(is_email('baijunyao@baijunyao.com'));
    15.  
      // 打印 ture
    16.  
      var_dump(is_email('baijunyao.com'));
    17.  
      // 打印 false

    经研究;这个函数验证邮箱的规则就是要有个@符号;然后@符号后面还要有个英文句号. ;

    咦?看到baijunyao.com;那有木有一个可以验证url域名的函数?

    恩;没错;有的;第二个参数传FILTER_VALIDATE_URL就是用来验证url的;

    1.  
      /**
    2.  
       * 验证是否是url
    3.  
       * @param  string  $url   url
    4.  
       * @return boolean        是否是url
    5.  
       */
    6.  
      function is_url($url){
    7.  
          if(filter_var($url,FILTER_VALIDATE_URL)){
    8.  
              return true;
    9.  
          }else{
    10.  
              return false;
    11.  
          }
    12.  
      }
    13.  
       
    14.  
      var_dump(is_url('http://baijunyao.com'));// 打印 true
    15.  
      var_dump(is_url('baijunyao.com'));// 打印 false
    16.  
      var_dump(is_url('http://a'));// 打印 true

    根据打印的结果可知;判断是否是url的规则就是要有http:// 后边要跟一个字母数字即可;

    当然;顺理成章;第二个参数传FILTER_VALIDATE_IP的时候就是验证是否是ip地址了;

    filter_var很强大的样子;那传个FILTER_VALIDATE_PHONE 是不是就可以验证手机号了?

    恩恩;;;答案是否定的;你想多了;

    白俊遥博客

    别看了;这是做文章封面图用的;

    转载 https://blog.csdn.net/bai9474500755/article/details/51059529

  • 相关阅读:
    关于跳槽你需要知道的
    Ping 命令的使用方法总结
    Linux 使用 su 切换用户提示 Authentication Failure 的解决方法
    《小强升职记——时间管理故事书》读书笔记
    记近期的几次面试经历
    每月书单_2014-06
    每月书单_2014-02
    交互式设计与用户体验
    读书笔记_探索式测试_混合探索式测试
    请慢慢移动……由于操作快慢导致的bug
  • 原文地址:https://www.cnblogs.com/songyanan/p/9283555.html
Copyright © 2011-2022 走看看