1

Web サイトに統合しようとしているオープン ソース プログラムがあります。開発中の LAMP セットアップで問題を引き起こしているコードを更新したいと考えています。

if ($dbselect)
        {
            if (!eregi('utf',strtolower($script_encoding)) && !defined('IN_LOGINPAGE'))
            {
               mysql_query("SET NAMES 'utf8'");   
            }
               else if (empty($script_encoding) || eregi('utf',strtolower($script_encoding))) 
            {
               mysql_query("SET NAMES 'utf8'");
            }

        }

eregi 呼び出しは非推奨であり、 preg_match を使用する必要があることは知っていますが、次のエラーが表示されます...

Warning: preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash in

誰かがそれを修正して、なぜ私が大歓迎なのかを説明できれば.

TIA(事前に感謝)

4

1 に答える 1

3

preg式を英数字およびバックスラッシュ以外の文字(両側に同じ文字)でラップする必要があります。

したがって、これの代わりに:

eregi('utf',strtolower($script_encoding))

これ

// wrapped in '#' (# and / are the two most common. I use # almost exclusively in PHP
// so that I don't have to escape the /)
// i = case insensitive, so you don't need strtolower
preg_match('#utf#i',$script_encoding)
于 2011-07-19T03:45:53.793 に答える