PHP: ereg 、 eregi 函式的替代方案

在 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);
    }
}

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *