ereg 和 eregi 函数将从 PHP 中删除。请帮助寻找以下 ereg 功能的替代品:
1) 仅允许特定范围的 IP 地址:
$targetAddr = "60.37..*..*";
if (!ereg($targetAddr, $_SERVER['REMOTE_ADDR'])) {
die;
}
2)替换一系列点,如............
$message = ereg_replace("[.]{3,}", "... ", $message);
只需使用preg_match
和preg_replace
。这些正则表达式与 Perl 正则表达式语法相同。
但是,第一个正则表达式可能应该写成
$targetAddr = "60[.]37[.].*[.].*";
如果它应该做你说它应该做的。(或者,使用反斜杠。)
This works for me:
$targetAddr = "/^60\.37\..+/";
if (!preg_match($targetAddr, $_SERVER['REMOTE_ADDR'])) {
die;
}
$message = preg_replace("/[.]{3,}/", "... ", $message);
Thomas and Anomareh, your answers helped me to find the right solution. Thank you.