Webセキュリティの小部屋

Twitter のフォローはこちらから Facebook ページはこちら RSSフィードのご登録はこちらから
公開日:2013年3月2日

PHP でレスポンスヘッダーの Content-Type に文字コードを指定する方法

PHP は、デフォルトでレスポンスヘッダーの Content-Type に文字コードに UTF-8 が出力されます(PHP5.3.3で動作確認)。ですが、文字コードは明示的に指定した方がよいでしょう。

Content-Type に文字コードを出力するには、php.ini で設定して全体に設定を反映させる方法と、各ページで設定する方法があります。

全体に反映させるには、php.ini に以下のように記述します。

default_charset = "UTF-8"

Apache を再起動します。

# service httpd restart

この状態で、PHP のページにアクセスすると、Content-Type は以下のようになります。

Content-Type:text/html; charset=UTF-8

各ページで文字コードを指定する場合は、以下のように記述します。

header("Content-type: text/html; charset=utf-8");

php.ini で、default_charset="Shift-JIS"に指定しましたが、Content-Type は問題なく UTF-8 で出力されていることが確認できます。

Content-Type:text/html; charset=utf-8


スポンサーリンク





カテゴリー:PHP

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA