ホームページ >バックエンド開発 >PHPの問題 >PHPのヘッダーってどういう意味ですか?

PHPのヘッダーってどういう意味ですか?

藏色散人
藏色散人オリジナル
2021-02-28 09:06:183557ブラウズ

Header は、元の HTTP ヘッダーをクライアントに送信するために使用される PHP の組み込み http 関数であるヘッダーを意味します。その使用構文は "header(string,replace,http_response_code)"; パラメーター文字列です。送信するヘッダー文字列を指定します。ヘッダーは通常、ページが存在しないことをブラウザーに通知する、リダイレクトを遅らせる、コンテンツ タイプを示す、ダウンロードされたファイルを宣言する、現在のドキュメントのキャッシュを無効にする、検証が必要なログイン ダイアログ ボックスを表示するなどの目的で使用されます。

PHPのヘッダーってどういう意味ですか?

この記事の動作環境:Windows7システム、PHP8バージョン、DELL G3パソコン

headerとはヘッダーの意味です。

php header() 関数は、元の HTTP ヘッダー をクライアントに送信します。ページが存在しないことをブラウザーに通知したり、リダイレクトを遅らせたり、コンテンツ タイプを示したりするためによく使用されます。 、ダウンロードしたファイルの宣言、現在のドキュメントのキャッシュの無効化、認証を必要とするログイン ダイアログの表示など。

ヘッダー関数は通常、設定で宣言されます:

header('HTTP/1.1 200 OK'); // ok 正常访问
 
header('HTTP/1.1 404 Not Found'); //通知浏览器 页面不存在
 
header('HTTP/1.1 301 Moved Permanently'); //设置地址被永久的重定向 301
 
header('Location: http://www.ithhc.cn/'); //跳转到一个新的地址
 
header('Refresh: 10; url=http://www.ithhc.cn/'); //延迟转向 也就是隔几秒跳转
 
header('X-Powered-By: PHP/6.0.0'); //修改 X-Powered-By信息
 
header('Content-language: en'); //文档语言
 
header('Content-Length: 1234'); //设置内容长度
 
header('Last-Modified: '.gmdate('D, d M Y H:i:s', $time).' GMT'); //告诉浏览器最后一次修改时间
 
header('HTTP/1.1 304 Not Modified'); //告诉浏览器文档内容没有发生改变

実際の出力が送信される前に header() 関数を呼び出す必要があることを認識することが重要です (PHP 4 以降のバージョンでは、この問題を解決するには、出力キャッシュを使用できます):

<html>
<?php
// 结果出错
// 在调用 header() 之前已存在输出
header(&#39;Location: http://www.example.com/&#39;);
?>

構文

header(string,replace,http_response_code)

パラメータ

  • 文字列 必須。送信するヘッダー文字列を指定します。

  • replace

    オプション。このヘッダーが前のヘッダーを置き換えるか、2 番目のヘッダーを追加するかを示します。

    デフォルトは true (置換) です。 false (同じタイプの複数のヘッダーを許可します)。

  • http_response_code オプション。 HTTP 応答コードを指定された値に強制します。 (PHP 4 以降で利用可能)

コメント: PHP 4.4 以降、この関数は複数のヘッダーが一度に送信されることを防ぎます。これは、ヘッダー インジェクション攻撃に対する保護措置です。

例 1

<?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>
...
...

注: ユーザーは、ブラウザのデフォルトのキャッシュ設定を変更するためにいくつかのオプションを設定できます。上記のヘッダーを送信すると、これらの設定をオーバーライドして、ブラウザーがキャッシュしないように強制できます。

例 2

生成された PDF ファイルを保存するようにユーザーにプロンプ​​トを表示します (Content-Disposition ヘッダーは、推奨されるファイル名を提供し、ブラウザーに保存ダイアログを強制的に表示するために使用されます):

<?php
header("Content-type:application/pdf");
// 文件将被称为 downloaded.pdf
header("Content-Disposition:attachment;filename=&#39;downloaded.pdf&#39;");
// PDF 源在 original.pdf 中
readfile("original.pdf");
?>
<html>
<body>
...
...

注: Microsoft IE 5.5 には、上記のメカニズムを妨げるバグがあります。このバグは Service Pack 2 以降にアップグレードすることで解決できます。

[推奨学習: 「PHP ビデオ チュートリアル 」]

以上がPHPのヘッダーってどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。