[PHP-users 25298] mb_convert_encoding/mb_detect_encoding について
Yoichi Enomoto
enomoto @ jposting.co.jp
2005年 4月 7日 (木) 16:45:37 JST
榎本と申します.
いつも参考にさせていただいております.
標記の件につきまして,同様の現象が発生している方がいらっしゃれば
情報をいただきたいと思います.
または,PHP の不具合かどうかをご教示いただきたく,よろしくお願い
いたします.
RedHat Linux 9, Apache 1.3.33 の環境において,先日リリースされた
PHP 4.3.11 を適用しました.
その後,一部の全角文字列において mb_detect_encoding() 関数の戻値
に変化があったため,同じ環境に PHP 4.3.10 と 4.3.11 を入れ替えて
それぞれ確認したところ動作が異なりました.
<?php
// internal_encoding = EUC-JP
$a = mb_convert_encoding('商社・流通・小売', 'SJIS', 'EUC-JP');
$b = mb_convert_encoding('小売業(百貨店、専門店、スーパー、CVS他)', 'SJIS', 'EUC-JP');
echo mb_detect_encoding($a); // 4.3.11 で EUC-JP と表示
echo "<br>";
echo mb_detect_encoding($b); // 4.3.11 で EUC-JP と表示
?>
4.3.11 の ChangeLog に,mb_* 系の修正がいくつか含まれていて,
mb_convert_encoding() の修正(http://bugs.php.net/bug.php?id=32063)
がありますが,UTF-8 の 'alpha' の扱いに関する修正でした.
また,mb_detect_encoding() に関連する修正はありませんでした.
皆さんの環境でも同様の結果が得られますでしょうか?
その場合,4.3.11 へのバージョンアップ時に mb_convert_encoding()
関数に不具合が混入されたと考えられるのでしょうか?
以上,ご意見伺いたく,ご協力の程よろしくお願いいたします.
--
Yoichi Enomoto <enomoto @ jposting.co.jp>
PHP-users メーリングリストの案内