[PHP-users 306] Re: php4.0.6とPostgerSQL での日本語コードについて!
Rui Hirokawa
php-users@php.gr.jp
Wed, 27 Jun 2001 07:29:24 -0500
廣川@ハンツビルです。
出力の文字エンコーディング変換は、PHP4の出力のバッファリング機能を利用し
ていますので、その設定が必要です。
PHPスクリプトから出力する文字のエンコーディングは、
内部エンコーディング(通常はEUC-JP)に統一し、出力のバッファリングのハン
ドラを使って出力したいエンコーディング(例えばShift_JIS)に変換します。
LinuxサーバからShift_JISでクライアントに出力する場合、お勧めは、
以下のようにすることです。
1.設定ファイル(php.ini)で以下のように設定
output_buffering = On ; (これは変更しなくても動くようです。)
output_handler = mb_output_handler ; 出力バッファリングハンドラを設定
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = SJIS
2.スクリプトのエンコーディングをEUC-JP (またはUTF-8)にしてPHPスクリプト
を作成。
PHPスクリプトもShift_JISではなく内部エンコーディングと同じエンコーディン
グ(EUC-JP)で作成してください。
On Wed, 27 Jun 2001 21:02:02 +0900
Morihiko Inamine <ina@swsys.co.jp> wrote:
Morihiko> 稲嶺と申します
Morihiko> php4.0.6とPostgreSQL7.1(linux)で
Morihiko> phpのスクリプトはSJISで書き
Morihiko> PostgreSQLのコードはEUC-JPで行きたいと思っているのですが
Morihiko> いざ、WindowsのIEで表示させるとスクリプトのecho();で書いた文字はSJISで表示され
Morihiko> PostgreSQLより取得した日本語はEUC-JPで表示され、文字化けしてしまいます
--
Rui Hirokawa <louis@cityfujisawa.ne.jp>
<hirokawa@php.net>