[PHP-users 20180]Re: いくつの文字が化けてしまいます

Seiji Masugata s.masugata @ digicom.dnp.co.jp
2004年 2月 2日 (月) 10:59:00 JST


こんにちわ、桝形です。

> >それから全てのCharsetはShift_JISです。
> 
> 「全ての」というのが何と何なのか不明なのですが、
> PHPスクリプトにマルチバイト文字が埋め込んであるとして
> もしもそのスクリプト自体がSHIFT_JISだったりすると
> たぶんまずいです。だって、
> 
> >mbstring.internal_encoding = EUC-JP    
> に設定されているのにスクリプトが
> Shift_JISで書いてあるというのは矛盾だからです。

上記の件の補足です。

PHPのコンパイルオプションで

「--enable-zend-multibyte」と「--enable-mbstring」

がついている場合に限り、

mbstring.encoding_translation = On
mbstring.script_encoding = SJIS( or auto )

の設定で、スクリプトファイルの文字コードがShift_JISでも、

mbstring.internal_encoding = EUC-JP

の設定で正常に動作する事は可能です。

実際には、SJISとしてそのまま処理される訳ではなく、スクリプトの
文字コードをinternal_encodingに変換してから、処理を行います。

-- 
Seiji Masugata<s.masugata @ digicom.dnp.co.jp>



PHP-users メーリングリストの案内