PHPで、UTF-8にSJISが混ざる

OPENPNEでUTF-8にSJISが混ざった。

よく調べてみると、phpmyadminもなぜか一部SJISで出力される。

php.iniを調べるも、特に問題点が分からない。

httpd.confはどうだろう?他にも文字コードに関する設定ファイルあっただろうか。

MYSQLも対象か。

<解決策>

php.iniに、SJISのスクリプトが動くための記述があり。

こいつが今回の犯人らしい。

基本的にサーバ内はUTFなのでこれをすべて削除し、SJISの該当ディレクトリの.htaccessに以下を追記。

php_value mbstring.language Japanese
php_value mbstring.internal_encoding SJIS
php_value mbstring.http_input auto
php_value mbstring.http_output SJIS
php_value mbstring.encoding_translation On
php_value mbstring.detect_order auto
php_value mbstring.substitute_character none

これで、SJISのPHPもUTF8も問題なく動く(ハズ)

Comments are closed.

© PHPress since 2008