2010-04-03 58 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[.].*[.].*"; 

,如果它應該做的,你說什麼它應該。 (另外,使用反斜槓。)