[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 メーリングリストの案内