2010-04-03 38 views
1

ereg和eregi函数将从Php中删除。请大家帮忙寻找替代下列额日格功能:寻找ereg函数的两个替代方案

1)允许IP地址仅适用于特定的范围:

$targetAddr = "60.37..*..*"; 
if (!ereg($targetAddr, $_SERVER['REMOTE_ADDR'])) { 
die; 
} 

2)要更换一系列像点......... ..............

$message = ereg_replace("[.]{3,}", "... ", $message); 

回答

1

这个工作对我来说:

$targetAddr = "/^60\.37\..+/"; 
if (!preg_match($targetAddr, $_SERVER['REMOTE_ADDR'])) { 
die; 
} 

$message = preg_replace("/[.]{3,}/", "... ", $message); 

托马斯和Anomareh,你的答案帮我找到合适的解决方案。谢谢。

+1

如果托马斯帮你找到解决方案,你应该已经接受了他的答案恕我直言。 – robertbasic 2010-08-04 18:10:00

3

只要使用preg_matchpreg_replace。这些正则表达式与Perl正则表达式的语法一样。

然而,第一正则表达式可能应该写

$targetAddr = "60[.]37[.].*[.].*"; 

,如果它应该做的,你说什么它应该。 (另外,使用反斜杠。)