対象OS、バージョン
phpの文字化けとphp.iniの設定
ファイルのエンコーディング(phpスクリプトの文字コード)と出力エンコーディングの違い
による、php.iniの設定例です。
Linuxの場合
ファイルエンコーディング(phpスクリプトの文字コード)がEUC_JPの場合
OutputEncoding |
php.ini |
SJIS |
output_buffering = On
output_handler = mb_output_handler
magic_quotes_gpc = Off
default_charset = Shift_JIS
[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none
|
EUC_JP |
output_buffering = Off
magic_quotes_gpc = Off
default_charset = EUC-JP
[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = EUC-JP
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none
|
ファイルエンコーディング(phpスクリプトの文字コード)がSJISの場合
OutputEncoding |
php.ini |
SJIS |
output_buffering = Off
magic_quotes_gpc = Off
default_charset = Shift_JIS
[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = SJIS
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none
|
EUC_JP |
output_buffering = On
output_handler = mb_output_handler
magic_quotes_gpc = Off
default_charset = EUC-JP
[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = SJIS
mbstring.http_input = auto
mbstring.http_output = EUC-JP
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none
|
windowsの場合
WindowsにPHPを入れた事がないので何とも言えないが・・・。
とりあえず設定例だけでも・・・。
(そのうち、Winに入れた後検証してみます)
ファイルエンコーディング(phpスクリプトの文字コード)がEUC_JPの場合
OutputEncoding |
php.ini |
SJIS |
output_buffering = On
output_handler = mb_output_handler
magic_quotes_gpc = Off
default_charset = Shift_JIS
extension_dir = C:/php/extensions
extension = php_mbstring.dll
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none
|
EUC_JP |
output_buffering = Off
magic_quotes_gpc = Off
default_charset = EUC-JP
extension_dir = C:/php/extensions
extension = php_mbstring.dll
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = EUC-JP
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none
|
ファイルエンコーディング(phpスクリプトの文字コード)がSJISの場合
OutputEncoding |
php.ini |
SJIS |
output_buffering = Off
magic_quotes_gpc = Off
default_charset = Shift_JIS
extension_dir = C:/php/extensions
extension = php_mbstring.dll
mbstring.language = Japanese
mbstring.internal_encoding = SJIS
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none
|
EUC_JP |
output_buffering = On
output_handler = mb_output_handler
magic_quotes_gpc = Off
default_charset = EUC-JP
extension_dir = C:/php/extensions
extension = php_mbstring.dll
mbstring.language = Japanese
mbstring.internal_encoding = SJIS
mbstring.http_input = auto
mbstring.http_output = EUC-JP
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none
|
Copyright ima All Rights Reserved.