[PHP-users 12446] UTF-8の扱いについて

Nobuhiro Miyatake php-users@php.gr.jp
Wed, 08 Jan 2003 17:40:27 +0900 (JST)


いつもお世話になっています、宮武と申します。

現在、PHPをバックエンドにFlashアプリケーションを開発しています。
ここで、PHPのUTF-8の扱いについて少し疑問を持っています。
PHPは内部コードEUC-JPで、クライアントはFlash MX、その間の
日本語コードはUTF-8(with urlencode)としています。

PHPではクライアントへの出力の際に
mb_convert_encoding($string, "UTF-8", "EUC-JP")
で出力をUTF-8としています。

ここで問題となるのが、"〜"や"−"といった文字の変換結果がFlash上で
別の文字となって表示されてしまう点です。色々と調べた結果、
http://homepage1.nifty.com/nomenclator/unicode/sjisdiff.txt
ここに至りまして、これらの文字に相当する部分を変更したPHPを
作成することで何とかうまく表示されるようになりましたが、
今後もこれをやらねばならないのかと思うと少々憂鬱になります。
(ext/mgstring/unicode_table_ja.h を変更)

質問

1 簡単にWindowsにマッチした変換テーブルにスイッチできる関数などはありますか?
2 みなさんはどう対処なさっていますか?


環境
サーバ  Miracle Linux 2/i386, PHP 4.2.3, Apache 1.3.27
クライアント  ブラウザ IE 6, Flash Player (Windows)


よろしくお願い致します。

宮武 伸裕 <miya@zuien.or.jp>