php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)

5年以前  |  阅读数:812 次  |  编程语言:PHP 

本文实例需要验证的内容:邮件地址、Url地址、电话号码、邮政编码,验证方法分享给大家供大家参考,具体内容如下

1、电子邮件地址的校验


    <?php
    /* 校验邮件地址*/
    function checkMail($email) {
    //用户名,由"\w"格式字符、"-"或"."组成
    $email_name= "\w|(\w[-.\w]*\w)";
    //域名中的第一段,规则和用户名类似,不包括点号"."
    $code_at= "@";
    $per_domain= "\w|(\w[-\w]*\w)";
    //域名中间的部分,至多两段
    $mid_domain= "(\." .$per_domain. "){0,2}";
    //域名的最后一段,只能为".com"、".org"或".net"
    $end_domain= "(\.(com|net|org))";
    $rs= preg_match(
    "/^{$email_name}@{$per_domain}{$mid_domain}{$end_domain}$/",
    $email
    );
    return (bool)$rs;
    }
    //测试,下面均返回成功
    var_dump( checkMail("root@localhost") );
    var_dump( checkMail("Frank.Roulan@esun.edu.org") );
    var_dump( checkMail("Tom.024-1234@x-power_1980.mail-address.com") );
    ?>

2、URL地址的校验


    <?php
    /* 校验URL地址*/
    function checkDomain($domain)
    {
    return ereg("^(http|ftp)s? ://(www\.)?.+(com|net|org)$", $domain);
    }
    $rs= checkDomain("www.taodoor.com");//返回假
    $rs= checkDomain("http://www.taodoor.com");//返回真
    ?>

3、电话号码


    <?php
    /* 校验电话号码*/
    function checkTelno($tel)
    {
    //去掉多余的分隔符
    $tel= ereg_replace("[\(\)\. -]", "", $tel);
    //仅包含数字,至少应为一个6位的电话号(即没有区号)
    if(ereg("^\d+$", $tel))
    {
    return true;
    }else{
    return false;
    }
    }
    $rs= checkTelno("(086)-0411-12345678");//返回真
    ?>

4、邮政编码的校验


    <?php
    /* 校验邮政编码*/
    function checkZipcode($code)
    {
    //去掉多余的分隔符
    $code = preg_replace("/[\. -]/", "", $code);
    //包含一个6位的邮政编码
    if(preg_match("/^\d{6}$/", $code))
    {
    return true;
    }else{
    return false;
    }
    }
    $rs= checkZipCode("123456");//返回真
    ?>

希望本文所述对大家学习php程序设计有所帮助。

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例