[PHP-users 21421]Re: 一時的な解決をしました。
komura
komura @ ma9.seikyou.ne.jp
2004年 4月 21日 (水) 00:13:52 JST
komura です。
On Tue, 20 Apr 2004 15:13:58 +0900
Matsuoka Toshimasa <matsuoka @ shanghai-q.co.jp> wrote:
> // 16進数のHTML数値実体を10進数のHTML数値実体に変換する
> function hex2digit_numericentity($str)
> {
> while(ereg("(&#x([0-9a-fA-F]+);)", $str, $regs)) {
> $str = str_replace($regs[1], "&#".hexdec($regs[2]).";", $str);
> }
> return $str;
> }
>
> 巨大な文字列だと、最悪な速度になる予感がします。
長い文字列の場合、以下のように preg_replace() を使用すると速くなると思います。
return preg_replace( '/&#x([0-9a-fA-F]+);/e', '"&#" . hexdec( "\\1" ) . ";"', $str );
--
komura <komura @ ma9.seikyou.ne.jp>
PHP-users メーリングリストの案内