多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# PHP headers_sent() 函数 ## 定义和用法 headers_sent() 函数检查 HTTP 标头是否已被发送以及在哪里被发送。 如果报头已发送,则返回 true,否则返回 false。 ### 语法 ``` headers_sent(_file_,_line_) ``` | 参数 | 描述 | | --- | --- | | _file_,_line_ | 可选。如果设置 _file_ 和 _line_ 参数,headers_sent() 会把输出开始的 PHP 源文件名和行号存入 file 和 line 变量中。 | ## 提示和注释 注释:一旦报头块已经发送,就不能使用 [header() 函数](/php/func_http_header.asp "PHP header() 函数") 来发送其它的标头。使用此函数至少可以避免与 HTTP 标头有关的错误信息。 注释:可选的 _file_ 和 _line_ 参数是 PHP 4.3 中新加的。 ## 例子 ### 例子 1 ``` <?php // 如果报头未发送,则发送一个 if (!headers_sent()) { header("Location: http://www.w3school.com.cn/"); exit; } ?> <html> <body> ... ... ``` ### 例子 2 使用可选的 file 和 line 参数: ``` <?php // 传递 $file 和 $line,供日后使用 // 不要预先为它们赋值 if (!headers_sent($file, $line)) { header("Location: http://www.w3school.com.cn/"); exit; // Trigger an error here } else { echo "Headers sent in $file on line $line"; exit; } ?> <html> <body> ... ... ```