void header ( string string [, bool replace [, int http_response_code]] )
void header ( string string [, bool replace [, int http_response_code]] )
header() は HTTP ヘッダーの送信に使用されます。 replace はオプションのパラメータで、以前の同様のヘッダーを置き換えるかどうかを示します。
または、同じタイプの 2 番目のヘッダーを追加します。デフォルトは置換ですが、FALSE パラメータを 2 番目のパラメータに渡すと (つまり置換)、
同じタイプの複数のヘッダーの使用を強制できます。例:
header('WWW-Authenticate: Negotiate');
header('WWW-Authenticate: NTLM', false);
?>
2 番目のオプションのパラメータ http_response_code は、HTTP 応答コードの値を強制します。 (PHP>4.3.0)
2 つの特定のヘッダー呼び出しがあります。 1 つは、ヘッダーが文字列 "HTTP/" (大文字と小文字は関係ありません) で始まり、
を使用することです。
発行される HTTP ステータス コードを指定します。たとえば、javascript:;" onClick="javascript:tagshow(event, 'PHP');" target="_self">PHP スクリプトを使用してリクエストを処理するように Apache を設定した場合
ファイルが存在しない場合は (ErrorDocument ディレクティブを使用)、スクリプトが適切なステータス コードを生成することを確認してください:
header("HTTP/1.0 404 が見つかりません");
?>
注: 実際に header() 関数をいつ呼び出すかに関係なく、HTTP ステータス行は常に最初にクライアントに送信されます。
HTTP ヘッダーが送信されていない限り、ステータスはいつでも header() 関数によって新しいステータスで使用されます
ステータス行の上書き。
PHP 3 では、Apache にコンパイルされた PHP モジュールのみが使用され、次の Staus ヘッダーを使用して同じ効果を実現できます
header("ステータス: 404 見つかりません");
?>
2 番目の特殊なケースは、「Location:」ヘッダーです。 3xx ステータス コードが発行されていない場合、それは
だけではありません。
Location 行が出力され、リダイレクト ステータス コード (302) が出力されます。
header("場所: http://www.BkJia.com");
終了します;
?>
注: HTTP/1.1 では、Location パラメーターとして絶対 URI が必要です: プロトコル ヘッダー、ホスト名、絶対パスを含む
ただし、一部のクライアントは相対 URI を受け入れることができます。 $_SERVER['HTTP_HOST'] $_SERVER['PHP_SELF'] と
を使用できます。
dirname() を使用して、相対 URI から絶対 URI を生成します。
header("場所: http://" . $_SERVER['HTTP_HOST']
.dirname($_SERVER['PHP_SELF'])
. "/" .$relative_url);
?>
PHP スクリプトは通常、クライアントのブラウザやプロキシ サーバーによってキャッシュされる必要のない動的コンテンツを生成します。多くのエージェントとクライアントは次のことを行うことができます
キャッシュを強制的に無効にする:
// 時間は必ず過ぎます
header("有効期限: 1997 年 7 月 26 日月曜日 05:00:00 GMT");
// ファイルは常に変更されます
header(”Last-Modified: ” . gmdate(”D, d M Y H:i:s”) . ” GMT”);
// HTTP/1.1
header("キャッシュ制御: ストアなし、キャッシュなし、再検証が必要");
header(”キャッシュ制御: post-check=0, pre-check=0〃, false);
// HTTP/1.0
header("プラグマ: キャッシュなし");
?>
注: 上記のヘッダーを出力しなくても、ページをキャッシュできない場合があります。デフォルトを変更したオプションがいくつかある可能性があります
キャッシュ動作。 sessrion_cache_limiter() を参照してください。
生成された PDF ファイルなど、過去に送信したデータを保存するようにユーザーに促したい場合は、Content_Dispostion を使用できます
ヘッダーに推奨ファイル名を指定し、ブラウザーに保存ダイアログを強制的に表示します。
header('Content-type: application/pdf');
header('Content-Disposition:attachment; filename=”downloaded.pdf”‘);
readfile('original.pdf');
?>
IEの場合、Connectionヘッダーを追加する必要があります
header("HTTP/1.1 301 が完全に移動されました");
header(”場所: “.$url);
header("接続: 閉じる");
header 中Content-typeの種類 Content-typeの説明:
「hqx」 -> 'application/mac-binhex40',
'cpt' -> 'application/mac-compactpro',
'ドキュメント' -> 'アプリケーション/msword'、
'ビン' -> 'アプリケーション/オクテットストリーム',
「dms」 -> 'アプリケーション/オクテットストリーム',
「は」 -> 'アプリケーション/オクテットストリーム',
「lzh」 -> 'アプリケーション/オクテットストリーム',
'exe' -> 'アプリケーション/オクテットストリーム',
'クラス' -> 'アプリケーション/オクテットストリーム',
「だから」 -> 'アプリケーション/オクテットストリーム',
「dll」 -> 'アプリケーション/オクテットストリーム',
「おだ」 -> 'アプリケーション/ODA'、
'pdf' -> 'アプリケーション/PDF',
「あい」 -> 「申請書/追伸」、
'eps' -> 「申請書/追伸」、
「追伸」 -> 「申請書/追伸」、
「スミ」 -> 'アプリケーション/笑顔'、
「笑顔」 -> 'アプリケーション/笑顔'、
「ミフ」 -> 'application/vnd.mif',
'xls' -> 'application/vnd.ms-excel',
'ppt' -> 'application/vnd.ms-powerpoint',
'wbxml' -> 'application/vnd.wap.wbxml',
「wmlc」 -> 'application/vnd.wap.wmlc',
'wmlsc' -> 'application/vnd.wap.wmlscriptc',
'bcpio' -> 'application/x-bcpio',
'vcd' -> 'application/x-cdlink',
'pgn' -> 'application/x-chess-pgn',
'cpio' -> 'application/x-cpio',
「csh」 -> 'application/x-csh',
「dcr」 -> 'アプリケーション/x-director',
'ディレクトリ' -> 'アプリケーション/x-director',
「dxr」 -> 'アプリケーション/x-director',
「dvi」 -> 'アプリケーション/x-dvi',
「spl」 -> 'application/x-futuresplash',
「gtar」 -> 'application/x-gtar',
'hdf' -> 'application/x-hdf',
「js」 -> 'application/x-javas
クリプト'、
「skp」 -> 'application/x-koan',
「skd」 -> 'application/x-koan',
'skt' -> 'application/x-koan',
「skm」 -> 'application/x-koan',
「ラテックス」 -> 'application/x-latex',
「nc」 -> 'application/x-netcdf',
'cdf' -> 'application/x-netcdf',
「し」 -> 'application/x-sh',
「シャー」 -> 'アプリケーション/x-shar',
「swf」 -> 'application/x-shockwave-flash',
「座る」 -> 'application/x-stuffit',
「sv4cpio」 -> 'application/x-sv4cpio',
「sv4crc」 -> 'application/x-sv4crc',
「タール」 -> 'アプリケーション/x-tar',
'tcl' -> 'application/x-tcl',
'テックス' -> 「アプリケーション/x-tex」、
'texinfo' -> 'application/x-texinfo',
「てぃ」 -> 'application/x-texinfo',
'ターゲット; 'アプリケーション/x-troff',
'tr' -> 'アプリケーション/x-troff',
「ロフ」 -> 'アプリケーション/x-troff',
「男」 -> 'application/x-troff-man',
「私」 -> 'application/x-troff-me',
「ms」 -> 'application/x-troff-ms',
「スター」 -> 'application/x-ustar',
'ソース' -> 'application/x-wais-source',
'xhtml' 'アプリケーション/xhtml+xml',
'xht' -> 'アプリケーション/xhtml+xml',
'zip' -> 'アプリケーション/zip',
「au」 -> 「オーディオ/基本」、
「snd」 -> 「オーディオ/基本」、
「ミッド」 -> 「オーディオ/MIDI」、
「ミディ」 -> 「オーディオ/MIDI」、
「カー」 -> 「オーディオ/MIDI」、
'mpga' -> 「オーディオ/MPEG」、
「mp2」 -> 「オーディオ/MPEG」、
「mp3」 -> 「オーディオ/MPEG」、
「aif」 -> 「オーディオ/x-aiff」、
「aiff」 -> 「オーディオ/x-aiff」、
「aifc」 -> 「オーディオ/x-aiff」、
「m3u」 -> 'audio/x-mpegurl',
「ラム」 -> 'audio/x-pn-realaudio',
「rm」 -> 'audio/x-pn-realaudio',
'rpm' -> 'audio/x-pn-realaudio-plugin',
「ら」 -> 'audio/x-realaudio',
「wav」 -> 「オーディオ/x-wav」、
'pdb' -> '化学/x-pdb',
'xyz' -> 「化学物質/x-xyz」、
'bmp' -> '画像/bmp',
'gif' -> '画像/gif',
'ief' -> '画像/ief'、
'jpeg' -> '画像/jpeg',
'jpg' -> '画像/jpeg',
「jpe」 -> '画像/jpeg',
'png' -> '画像/png',
「ティフ」 -> '画像/ティフ'、
'tif' -> '画像/ティフ'、
「djvu」 -> 'image/vnd.djvu',
「djv」 -> 'image/vnd.djvu',
「wbmp」 -> 'image/vnd.wap.wbmp',
「ラス」 -> 'image/x-cmu-raster',
「pnm」 -> 'image/x-portable-anymap',
'pbm' -> 'image/x-portable-bitmap',
'pgm' -> 'image/x-portable-graymap',
「ppm」 -> 'image/x-portable-pixmap',
'rgb' -> 'image/x-rgb',
「xbm」 -> 'image/x-xbitmap',
「xpm」 -> 'image/x-xpixmap',
'xwd' -> 'image/x-xwindowdump',
「igs」 -> 'モデル/iges'、
'iges' -> 'モデル/iges'、
'msh' -> 'モデル/メッシュ',
「メッシュ」 -> 'モデル/メッシュ',
「サイロ」 -> 'モデル/メッシュ',
'wrl' -> 'モデル/vrml',
'vrml' -> 'モデル/vrml',
'css' -> 'テキスト/CSS',
'html' -> 'テキスト/html'、
'htm' -> 'テキスト/html'、
'asc' -> 'テキスト/プレーン'、
'txt' -> 'テキスト/プレーン'、
「rtx」 -> 'テキスト/リッチテキスト',
「rtf」 -> 'テキスト/rtf'、
'sgml' -> 'text/sgml',
「sgm」 -> 'text/sgml',
「tsv」 -> 'テキスト/タブ区切り値',
'wml' -> 'text/vnd.wap.wml',
'wmls' -> 'text/vnd.wap.wmlscript',
「etx」 -> 'text/x-setext',
'xsl' -> 'テキスト/xml',
'xml' -> 'テキスト/xml',
'mpeg' -> 'ビデオ/mpeg'、
'mpg' -> 'ビデオ/mpeg'、
'mpe' -> 'ビデオ/mpeg'、
'qt' -> 「ビデオ/クイックタイム」、
'mov' -> 「ビデオ/クイックタイム」、
「mxu」 -> 'video/vnd.mpegurl',
「avi」 -> 'ビデオ/x-msvideo'、
「映画」 -> 'video/x-sgi-movie',
「アイス」 -> 「x-カンファレンス/x-cooltalk」