我有一个域查找代码,但它有效,但有一个不推荐使用的区域。
这是我的代码:
if (eregi('^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)*[a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?$',$domain) != 1){
$error = 'Invalid domain (Letters, numbers and hypens only) ('.$domain.')';
return false;
}
如何修复错误? 请帮忙!
答案 0 :(得分:3)
注意:强>
从PHP 5.3.0开始,不推荐使用正则表达式扩展而使用PCRE extension。调用此函数将发出
E_DEPRECATED
通知。有关转换为PCRE的帮助,请参阅list of differences。
答案 1 :(得分:1)
您应该使用preg_match
而不是eregi答案 2 :(得分:1)
改变这个:
if (eregi('^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)*[a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?$',$domain) != 1){
$error = 'Invalid domain (Letters, numbers and hypens only) ('.$domain.')';
return false;
}
到此:
if (preg_match('/^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)*[a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?$/i',$domain) != 1){
$error = 'Invalid domain (Letters, numbers and hypens only) ('.$domain.')';
return false;
}