HttpHeaderLines.php - Examples of Inserting Header Lines
This section provides a tutorial example on how to insert HTTP response header lines using the header() function.
Now let's see how the PHP engine defines header lines and how you can control them.
First create this simple script, hello.php, and copy it to c:\inetpub\wwwroot.
Hello <?php echo "world!"; ?>
Then obtain the response with "php HttpRequestGet.php /hello.php":
HTTP/1.1 200 OK
Date: Sat, 19 Nov 2005 02:39:52 GMT
Comparing with the static files described in the previous section, the output shows:
- PHP engine added its own header line, "X-Powered-By".
- IIS maintained the header line, "Server".
- "ETag" was removed. I don't know what is ETag anyway.
- PHP defaulted "Content-Type" to "text/html".
- "Content-Length" is not provided. This is not a good behavior, if the client relies on this value.
Now, I am ready to instruct the PHP how to define header lines. Here is my testing
#- Copyright (c) 2015, HerongYang.com, All Rights Reserved.
$text = "<html><body>Hello world!</body></html>";
header("Key-Word: HTTP", false);
Here is the output:
HTTP/1.1 200 OK
Date: Sat, 19 Nov 2005 02:28:32 GMT
Okay. What can we say about the output?
- I was able to call header() after I started to output the entity body, because I had the output buffer turned on.
I entered "output_buffering = 4096" in php.ini.
- "Content-Type" defined ok.
- "Content-Length" defined ok. But it was outputted after "X-Powered-By". Not sure why.
- The "replace" flag worked. There is only one "Version", because by default replace is turned on.
There are two "Key-Word", because I set "replace" to "false" in my second header() call.
Last update: 2015.
Table of Contents
About This Book
Introduction and Installation of PHP 7.0
PHP Script File Syntax
PHP Data Types and Data Literals
Variables, References, and Constants
Expressions, Operations and Type Conversions
Conditional Statements - "if" and "switch"
Loop Statements - "while", "for", and "do ... while"
Function Declaration, Arguments, and Return Values
Arrays - Ordered Maps
Configuring and Sending out Emails
Retrieving Information from HTTP Requests
Creating and Managing Sessions in PHP Scripts
Sending and Receiving Cookies in PHP Scripts
►Controlling HTTP Response Header Lines in PHP Scripts
What Is an HTTP Response?
HTTP Response Header Lines
header() - Inserting a Raw Header Lines
HttpRequestGet.php - Viewing Header Lines
Response Header Lines of Static Files
►HttpHeaderLines.php - Examples of Inserting Header Lines
Location: - Forcing the Browser to Redirect to Another URL
Content-Type: - Generating Non-HTML Response Body
Content-Disposition: - Sending Files for Downloading
MySQL Server Connection and Access Functions
Functions to Manage Directories, Files and Images
SOAP Extension Function and Calling Web Services
SOAP Server Functions and Examples
Localization Overview of Web Applications
Using Non-ASCII Characters in HTML Documents
Using Non-ASCII Characters as PHP Script String Literals
Receiving Non-ASCII Characters from Input Forms
"mbstring" Extension and Non-ASCII Encoding Management
Managing Non-ASCII Character Strings with MySQL Servers
Introduction of Class and Object
Integrating PHP with Apache Web Server
PDF Printing Version