不推荐使用:函数eregi()在第107行的/home/hjlhvqyy/public_html/fastseoindia/klib/class.kValidate.php中已弃用
不推荐使用:第109行/home/hjlhvqyy/public_html/fastseoindia/klib/class.kValidate.php弃用了函数eregi()
已弃用:第110行/home/hjlhvqyy/public_html/fastseoindia/klib/class.kValidate.php弃用了函数eregi()
不推荐使用:第111行/home/hjlhvqyy/public_html/fastseoindia/klib/class.kValidate.php弃用了函数eregi()
不推荐使用:第92行的/home/hjlhvqyy/public_html/fastseoindia/klib/class.kValidate.php弃用了函数ereg()
下面是代码
function is_email($string)
{
$string = trim($string);
$result = ereg(
'^([A-Za-z0-9_!]|\\-|\\.)+'.
'@'.
'(([A-Za-z0-9_]|\\-)+\\.)+'.
'[A-Za-z]{2,4}$',
$string
); //line 92
return($result);
}
function is_url($urladdr)
{
$regexp = "^(https?://)";
$regexp .= "?(([0-9a-z_!~*'().&=+$%-]+:)?[0-9a-z_!~*'().&=+$%-]+@)?";
$regexp .= "(([0-9]{1,3}\.){3}[0-9]{1,3}";
$regexp .= "|";
$regexp .= "([0-9a-z_!~*'()-]+\.)*";
$regexp .= "([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\.";
$regexp .= "[a-z]{2,6})";
$regexp .= "(:[0-9]{1,4})?";
$regexp .= "((/?)|";
$regexp .= "(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$";
if (eregi( $regexp,$urladdr )) { // line 107
if (!eregi( "^https?://",$urladdr )) {
$urladdr = "http://".$urladdr; //line 109
}
if (!eregi( "^https?://.+/",$urladdr )) { // line 110
$urladdr .= "/";
}
if ((eregi( "/[0-9a-z~_-]+$",$urladdr)) && (!eregi( "[\?;&=+\$,#]",$urladdr))) {
$urladdr .= "/";
}
return ($urladdr);
} else {
return false;
}
}
请....这段代码是有效的,但刷新后......它保存了......但是当我们点击保存按钮时它会显示此警告然后刷新它工作的页面....意味着直接保存设置
答案 0 :(得分:1)
好吧,错误几乎说明了一切 - 函数ereg()
已被弃用,您应该将其替换为preg_match。
答案 1 :(得分:1)
preg_match的模式需要分隔符。我建议()为他们。在结束分隔符之后,您可以为不区分大小写的匹配项提供“i”等选项
function is_email($string)
{
$string = trim($string);
$result = preg_match(
'(
^([A-Za-z0-9_!]|\\-|\\.)+
@
(([A-Za-z0-9_]|\\-)+\\.)+
[A-Za-z]{2,4}$
)Dx',
$string
); //line 92
return($result);
}
function is_url($urladdr)
{
$regexp = "(
^(https?://)
?(([0-9a-z_!~*'().&=+$%-]+:)?[0-9a-z_!~*'().&=+$%-]+@)?
(([0-9]{1,3}\.){3}[0-9]{1,3}
|
([0-9a-z_!~*'()-]+\.)*
([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\.
[a-z]{2,6})
(:[0-9]{1,4})?
((/?)|
(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$
)Dix";
if (preg_match( $regexp,$urladdr )) { // line 107
if (!preg_match( "(^https?://)Di",$urladdr )) {
$urladdr = "http://".$urladdr; //line 109
}
if (!preg_match( "(^https?://.+/)Di",$urladdr )) { // line 110
$urladdr .= "/";
}
if ((preg_match( "(/[0-9a-z~_-]+$)Di",$urladdr)) && (!preg_match( "([\?;&=+\$,#])Di",$urladdr))) {
$urladdr .= "/";
}
return ($urladdr);
} else {
return false;
}
}
答案 2 :(得分:0)
您可以使用字符“@”来避免警告(但不建议):
$result = @ereg();
最好的选择是用函数preg_match()替换。