[PHP-dev 259] Re: PHP 5/Zend Engine 2の国際化について

Masaki Fujimoto php-dev@php.gr.jp
Wed, 13 Mar 2002 23:07:39 +0900


ふじもとです。

# 先のメールで1箇所、よしおかさんをよしかわさんと書いてしまいました。本
# 当に申し訳ありませんでした。

On Mon, 11 Mar 2002 07:28:47 +0900
Rui Hirokawa <rui_hirokawa@ybb.ne.jp> wrote:

> > > (1) UCS-2
> > > (2) UTF-8 or ISO-8859-1
> > > 
> > > あたりをコンパイル時に指定に1票です。
> > 
> > 内部処理でワイド文字を使うのであれば,どんなエンコーディングを採用して
> > も処理ロジックは同じになるので,もう少し選択肢を増やしてもいいのではな
> > いかと思います(もちろん,ワイド文字<-->マルチバイト文字の相互変換の部
> > 分は同じにはなりませんが).EUC-JP位は追加したいところです.
> 
> 確かにEUC-JPもあると良いですね。

うーん。個人的には「マルチバイトならUTF-8」というスタンスが潔くて良いか
なぁ、などと思っていたのですが。

> > ところで,内部コードをUnicodeにしても,まじめにUnicodeの合成文字とかに
> > は対応しないのですよね?
> > # 別に対応したいと思っているわけではなく,むしろおおごとなのでいやだな
> > # と思っています.
> 
> 対応しない(できない)と思います。
> 合成文字も含めて真面目に対応するというより、今の時点では国際化という
> 視点を理解してもらう方で手一杯ですね、多分。

これは僕もそう思います。実装レベル1が精一杯でしょうね。

# 最近pgsql-jpでも話題になっていますが、UNICODEのマッピング問題は頭が痛
# いですね...

ところで、大きな勘違いをしているかもしれないので確認させていただきたいの
ですが、内部エンコーディングをコンパイル時に統一するということは、非常に
大雑把に言って:

(1) スクリプト読み込み時にスクリプトエンコーディングから内部エンコーディ
    ングに変換
(2) 通常どおりコンパイル等...
(3) これに加えて実行時に外部リソース(ファイル、DB等。UML的にはアクタかな?)
    とのエンコーディング変換を明示的、もしくは透過的に行う機能を提供

ということになると思っているのですが、大筋として皆様はどの様にお考えなの
でしょうか?もし一人でズレていたら困るので、是非訂正してください:)


--
藤本 真樹

アストラザスタジオ
fujimoto@studio.co.jp
fujimoto@php.net