关于header,headers_sent,headers_list,header_remove 使用说明

jacklove
发布: 2018-06-09 10:45:11
原创
1806人浏览过

1.header

void header ( string $string [, bool $replace = true [, int $http_response_code ]] )
登录后复制

功能:发送一个自定义的http报文。

请注意一点,header()必须在任何实际输出之前调用,不管是普通的html标签,还是文件里面的空行,空格或者是PHP文件里的空行,空格。这是一个非常普遍的错误,在通过include,require,或者其访问其他文件里面的函数时,如果在header()被调用之前,其中有空格或空行。如果不是调用其他文件,仅仅是单独使用一个PHP或者HTML文件,在header()被调用之前有输出也会出错。

参数说明:

string  报文字符串

replace 如果为true,表示后面一个相同类型的报文信息来取代前面一个相似的报文信息。默认为true,如果设为false,可以强制使相同的报文信息并存。

http_response_code 强制指定HTTP响应的值。注意,这个参数只有在报文字符串(string)不为空的情况下才有效。

例子:把重定性302强制指定为303

<?php
header('location:http://www.example.com/', true, 303);
?>
登录后复制

2.headers_sent

bool headers_sent ([ string &$file [, int &$line ]] )
登录后复制

功能:检查 HTTP 标头是否已被发送以及在哪里被发送。

参数说明:

file 如果设置此参数,会把执行了header输出的php源文件名存入file变量中

line 如果设置此参数,会把执行了header输出的php源文件的代码行号存入line变量中

例子:

例子:
<?php
header('content-type:text/html;charset=utf-8');
echo 'fdipzone<br>';
ob_end_flush();
if(headers_sent($file, $line)){
    echo "header send in $file on line $line";
}else{
    echo 'not header response';
}
?>
登录后复制

上例输出:header send in /home/fdipzone/demo.php on line 5

3.headers_list

array headers_list ( void )
登录后复制

功能:列出所有的header输出(或准备输出),返回为数组

例子:输出header list

<?php
header('content-type:text/html;charset=utf-8');
header('access-control-allow-origin:*');
$headers_list = headers_list();
print_r($headers_list);
?>
登录后复制

输出:

Array
(
    [0] => X-Powered-By: PHP/5.4.3
    [1] => content-type:text/html;charset=utf-8
    [2] => access-control-allow-origin:*
)
登录后复制

4.header_remove

void header_remove ([ string $name ] )
登录后复制

功能:移除某个header输出

参数说明:

name 要移除的header name

例子:判断是否有access-control-allow-origin:*,如果有则移除

<?php
header('content-type:text/html;charset=utf-8');
header('access-control-allow-origin:*');
if(in_array('access-control-allow-origin:*', headers_list())){
    header_remove('access-control-allow-origin');
}
print_r(headers_list());
?>
登录后复制

本文讲解了header,headers_sent,headers_list,header_remove 使用说明,更多相关内容请关注php中文网。

相关推荐:

通过PDO 查询mysql返回字段整型变为String型的解决方法

通过php根据地理坐标来获取国家、省份、城市,及周边数据类

如何使用glob方法遍历文件夹下所有文件的相关方法

以上就是关于header,headers_sent,headers_list,header_remove 使用说明的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号