PHP header()関数
例
ページのキャッシュを防ぐために、3つのHTTPヘッダーを送信します。
<?php
// Date in the past
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache");
header("Pragma: no-cache");
?>
<html>
<body>
...
...
注:ブラウザのデフォルトのキャッシュ設定を変更するためにユーザーが設定できるオプションがあります。上記のヘッダーを送信することで、これらの設定を上書きし、ブラウザに強制的にキャッシュさせないようにします!
定義と使用法
header()関数は、生のHTTPヘッダーをクライアントに送信します。
実際の出力が送信される前に、header()関数を呼び出す必要があることに注意してください。
構文
<div>header(<em>header</em>, <em>replace</em>, <em>http_response_code</em>)</div>
パラメータ値
パラメータ |
説明 |
---|---|
header | Required 送信するヘッダー文字列を指定します |
replace | Optional ヘッダーが以前の同様のものを置き換えるかどうかを示します ヘッダーを追加するか、同じタイプの新しいヘッダーを追加します。デフォルトは TRUEです(置き換えられます)。FALSEでは、同じタイプの複数のヘッダーが許可されます |
http_response_code | Optional HTTP 応答コードを指定された値に強制します |
Technical Details
Return Value: | なし |
---|---|
PHP バージョン: |
4.0+ |
PHP 変更ログ: |
PHP 5.1.2: 複数のヘッダーが一度に送信されないようになりました。これ ヘッダーインジェクション攻撃に対する保護です |
その他の例
例
生成されたPDFファイルを保存するようにユーザーに促します(Content-Disposition ヘッダーを使用して、推奨されるファイル名を指定し、ブラウザーに保存ダイアログ ボックスを強制的に表示させます)。
<?php
header("Content-type:application/pdf");
// It will be called downloaded.pdf
header("Content-Disposition:attachment;filename='downloaded.pdf'");
// The PDF source is in original.pdf
readfile("original.pdf");
?>
<html>
<body>
...
...
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。