(PHP 4, PHP 5, PHP 7)
header — ����ԭ�� HTTP ͷ
$string
[, bool $replace
= true
[, int $http_response_code
]] ) : voidheader() ���ڷ���ԭ���� HTTP ͷ������ HTTP ͷ�ĸ�����Ϣ��ο� » HTTP/1.1 specification��
��ע�� header() �������κ�ʵ�����֮ǰ���ã���������ͨ�� HTML ��ǩ�������ļ��� PHP ����Ŀ��У��ո����Ǹ������Ĵ�����ͨ��include��require����������������ļ�����ĺ�����ʱ�������header()������֮ǰ�������пո���߿��С� ͬ��������Ҳ�����ڵ����� PHP/HTML �ļ��С�
<html>
<?php
/* This will give an error. Note the output
* above, which is before the header() call */
header('Location: http://www.example.com/');
exit;
?>
string
ͷ�ַ�����
�������ر��ͷ����һ����"HTTP/"��ͷ�� (case is not significant)�����ᱻ�����������Ҫ���͵�HTTP״̬�롣 ������ Apache ���������� PHP �ű������������ļ�������ʹ�� ErrorDocument ָ��� �ͻ�ϣ���ű���Ӧ����ȷ��״̬�롣
<?php
header("HTTP/1.0 404 Not Found");
?>
�ڶ������������"Location:"��ͷ��Ϣ���������ѱ��ķ�������������һ������ظ������һ�� REDIRECT��302����״̬�룬����״̬���Ѿ����ȱ�����Ϊ��201����3xx��
<?php
header("Location: http://www.example.com/"); /* Redirect browser */
/* Make sure that code below does not get executed when we redirect. */
exit;
?>
replace
��ѡ���� replace
�����Ƿ��ú����ͷ�滻ǰ����ͬ���͵�ͷ��
Ĭ������»��滻��������� FALSE
���Ϳ���ǿ��ʹ��ͬ��ͷ��Ϣ���档���磺
<?php
header('WWW-Authenticate: Negotiate');
header('WWW-Authenticate: NTLM', false);
?>
http_response_code
ǿ��ָ��HTTP��Ӧ��ֵ��ע�⣬�������ֻ���ڱ����ַ�����string
����Ϊ�յ�����²���Ч��
û�з���ֵ��
�汾 | ˵�� |
---|---|
5.1.2 | ����������ڿ���һ������ֹ���������Ϣ�ķ��ͣ��Ӷ���Ϊ�Ա�����Ϣע�빥����һ�ַ����� |
Example #1 ���ضԻ���
������������û�ȥ�����㷢�͵����ݣ����籣��һ�����ɵ�PDF�ļ��������ʹ��» Content-Disposition�ı�����Ϣ���ṩһ���Ƽ����ļ���������ǿ���������ʾһ���ļ����صĶԻ���
<?php
// We'll be outputting a PDF
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');
?>
Example #2 ����ָ��
PHP�ű����ǻ�����һЩ��̬���ݣ�����Щ�����Dz�Ӧ�ñ�����ģ������ǿͻ�������������ڷ������˺Ϳͻ��������֮����κδ������ǿ�����������ǿ�������������������㲻�������ݣ�
<?php
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
?>
Note:
Ҳ���������������������Ǿ��Ǽ�ʹ��ûʹ��������δ��룬���ҳ��Ҳû�б����档������������Ϊ�û������Լ��������ǵ�������Ӷ��ı������Ĭ�ϵĻ�����Ϊ��һ��������������α�����Ϣ����ô���Ӧ����д��Щ�����õ������˵Ĵ��롣
���⣬������session������£�session_cache_limiter()��session.cache_limiter�����ÿ��������Զ���������ȷ�Ļ�����ص�ͷ��Ϣ��
Note:
����ͷֻ����SAPI֧��ʱ�õ�����������
Note:
��������Ҫ���������������ݽ���һֱ�����ڷ������ˣ�ֱ���㷢�����ǣ��⽫��ɱȽϴ����Դ�������������������������ܿ�������⡣�����ͨ���ڽű���ʹ��ob_start()��ob_end_flush()����ֱ�������php.ini�ļ�������output_buffering��Ҳ����ֱ���ڷ������������ļ������á�
Note:
HTTP״̬��Ϣ�ı�����Զ�������±����͵��ͻ��˵ģ�������header()�Ƿ��������ȷ��͵ġ�����״̬����ܻᱻ��д��������header()���趨�µ�״̬�룬����HTTP�����Ѿ��������ˡ�
Note:
��IE 4.01��IE 5.5����bug��Ҫ���������������ɣ����Ҳû������ôԶ�ŵ������˰ɡ�
Note: �����ȫģʽ��safe mode���������ô�ű���uid���ᱻ��ӵ�WWW-Authenticate��realm���֣�ǰ���������������ͷ��Ϣ������£�ʹ�� HTTP ��֤����
Note:
HTTP/1.1��Ҫһ�����Ե�������Դ��ַ��URI������Ϊһ��������» Location:ʹ�ã������б��������Э�飬������ַ����������·��������һЩ�ͻ��˿��Խ�����Ե�������Դ��ַ���������һ����Ե���·��Դ��ַ�Ļ�����ʹ��$_SERVER['HTTP_HOST']��$_SERVER['PHP_SELF']��dirname()����װһ�����Ե���·��Դ��ַ��
<?php
/* Redirect to a different page in the current directory that was requested */
$host = $_SERVER['HTTP_HOST'];
$uri = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
$extra = 'mypage.php';
header("Location: http://$host$uri/$extra");
exit;
?>
Note:
��ִ��Location header��ת��ʱ��Session ID��ͨ���ݵģ���ʹsession.use_trans_sid�Ǽ���״̬�ġ�ֻ��ͨ���ֶ�����using
SID
��ֵ��ʵ�֡�