PHPではヘッダーを書かなくても自動的に送信してくれています。
header()関数を使うことで、生のHTTPヘッダーを送信することができるようになります。
デフォルトで送信されているヘッダーのうちの代表的なものとしてCGIなどでもお馴染みの以下のものがある。
これはheader()関数を使って以下の記述をしたのと同等になる。
このContent-typeヘッダーでは送信文字コードを知らせることができるので以下のようにして送信するヘッダーを上書きすることができる。
これで送信したHTML文書がシフトJISで書かれていることをブラウザに教えることができます。
次はUTF-8の文字コードで書かれたテキスト文書を送信する時のヘッダーになります。
その他、Content-typeヘッダーを指定する使い方として以下のように画像データをPHPスクリプトから読み出して画像ファイルのように扱うこともできる。
[readfile.php]