当我写这段代码时:
$pat='^[A-Za-z][a-zA-Z0-9_\-\.]*@[a-zA-z0-9\-]+\.[a-zA-Z0-9\-\.]+$';
$mail='javad.y1';
ereg($pat,$mail);
我收到此错误:
已弃用:函数 ereg() 在第 10 行的 C:\wamp\www\Test\test.php 中已弃用
声明“错误:不推荐使用:不推荐使用函数 ereg() ”几乎可以回答您的问题。
关于使用更现代的等价物,请参阅PHP 手册中的与POSIX 正则表达式的差异页面以及您需要使用的preg_match函数。
或者,对于一些令人兴奋的进一步阅读,为什么不查看:http ://en.wikipedia.org/wiki/Deprecated
使用示例代码更新
如果您尝试验证电子邮件,则可以使用:
if(preg_match("/^[A-Za-z][a-zA-Z0-9_\-\.]*@[a-zA-z0-9\-]+\.[a-zA-Z0-9\-\.]+/", $email)) {
// The email is valid. Yay for stuff! And things!
}
也就是说,我不会说这一定是最好的方法。
因为ereg()
已弃用。你应该preg_match()
改用。
你现在是Perl 兼容的 RegEx。
As of PHP 5.3.0 this extension is deprecated, calling any function
此扩展提供的将发出 E_DEPRECATED 通知。