在 PHP 5.3 以後,使用 ereg 、 eregi 函式會出現這個函式即將被廢棄的提示。
而 PHP 官網也告知: eregi() is deprecated as of PHP 5.3.0. preg_match() with the i (PCRE_CASELESS) modifier is the suggested alternative. 建議用 preg_match 函式來取代 eregi 函式的使用。
那麼如果想使用 ereg 、 eregi 函式,又不想在新版 PHP 上修改已寫好的程式,有什麼方法呢?
加入以下程式,可在新版 PHP 沒有 ereg 、 eregi 函式的狀況下,自動以 preg_match 來取代。
if (!function_exists('ereg'))
{
function ereg($pattern, $string, $regs)
{
return preg_match('/'.$pattern.'/', $string, $regs);
}
}
if (!function_exists('eregi'))
{
function eregi($pattern, $string, $regs)
{
return preg_match('/'.$pattern.'/i', $string, $regs);
}
}