Home >Backend Development >PHP Problem >Detailed explanation of the usage of php header

Detailed explanation of the usage of php header

藏色散人
藏色散人Original
2020-07-08 09:48:443313browse

php header is used to send the original HTTP header to the client. The syntax of this function is "header(string,replace,http_response_code)", where the parameter string represents the header string to be sent.

Detailed explanation of the usage of php header

PHP header() function

Definition and usage

header() function to the client The client sends raw HTTP headers.

It's important to realize that the header() function must be called before any actual output is sent (in PHP 4 and above, you can use output caching to solve this problem):

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

Syntax

header(string,replace,http_response_code)

Parameters

string Required. Specifies the header string to be sent.

replace

Optional. Indicates whether this header replaces the previous header, or adds a second header.

The default is true (replacement). false (allow multiple headers of the same type).

http_response_code Optional. Forces the HTTP response code to the specified value. (Available in PHP 4 and above)

Tips and Notes

Note: As of PHP 4.4, this function prevents multiple headers from being sent at once. This is a protection measure against header injection attacks.

Example

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

Note: The user may set some options to change the browser's default cache settings. By sending the header above, you can override any of these settings and force the browser not to cache!

Example 2

Prompts the user to save a generated PDF file (the Content-Disposition header is used to provide a recommended file name and force the browser to display a save dialog):

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

Note: Microsoft IE 5.5 has a bug that prevents the above mechanism. This bug can be resolved by upgrading to Service Pack 2 or later.

For more related knowledge, please visit PHP Chinese website!

The above is the detailed content of Detailed explanation of the usage of php header. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn