【自己简单优化了一下 分享给大家 共勉】

来源:3-8 正则匹配常用案例

爱折腾的卤蛋

2015-01-07 00:30

<?php
$user = array(
    'name' => 'spark1985',
    'email' => 'spark@imooc.com',
    'mobile' => '13312345678'
);
//进行一般性验证
if (!isset($user)) {
    die('用户信息不能为空');
}
//用户名必须为字母、数字与下划线 //不区分大小写
//帐号首位为英文字母 账号长度8-15位
//或者是邮箱帐号 支持长度(5-15 1 1-15 2-5)
if (!preg_match('/([a-z]{1}\w{7,14}|[\w{1}\-\_]{5,15}@\w{1,15}\.\w{2,5})/i', $user['name'])) {
    die('用户名不合法');
}
//验证邮箱格式是否正确
if (!preg_match('/^[\w\.]+@\w+\.\w+$/i', $user['email'])) {
    die('邮箱不合法');
}
//手机号必须为11位数字,且为1开头
if (!preg_match('/^1[3458]\d{9}$/i', $user['mobile'])) {
    die('手机号不合法');
}
echo '用户信息验证成功';


写回答 关注

2回答

  • mosaice
    2015-06-17 01:12:32

    你把邮箱和用户名写一块了他后面读取的只是key为name的 不过学习精神挺好的 支持一个!

  • qq_叶为我心_0
    2015-01-17 16:02:37

    ('/([a-z]{1}\w{7,14}|[\w{1}\-\_]{5,15}@\w{1,15}\.\w{2,5})/i', $user['name'])

    当用户名的包括下划线的任何单词字符超过一定数时,添加其他的非单词字符(包括下划线)(如添“+——”等)还是不会报错,代码优化不够

PHP进阶篇

轻松学习PHP中级课程,进行全面了解,用PHP快速开发网站程序

181835 学习 · 2577 问题

查看课程

相似问题