2

codeigniter 用于验证电子邮件地址的正则表达式是什么?我计划在表单验证的 javascript 部分使用相同的正则表达式,这样正则表达式就不会发生冲突,例如 xy#@spic7.com 可能会传入 javascript 部分,但不会传入 php 部分)

4

2 回答 2

2

您本可以在发布此问题所花费的相同时间内自己查看源代码,但无论哪种方式,这是 CI 用来验证电子邮件的方法,直接来自system/libraries/Form_validation.php

/**
 * Valid Email
 *
 * @access  public
 * @param   string
 * @return  bool
 */
function valid_email($str)
{
    return ( ! preg_match("/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix", $str)) ? FALSE : TRUE;
}
于 2012-04-30T16:58:11.170 回答
0

也许最好的解决方案是调用电子邮件助手并检查电子邮件有效性:

$this->load->helper('email');

if (valid_email('email@somesite.com')) echo 'email is valid';
于 2013-02-28T12:04:51.633 回答