我想大多数人都知道PHP中臭名昭着的"Headers already sent"错误.如果标题已经发送,我可以检查一下吗?
在尝试设置一些SESSION数据或类似数据之前,这样做会非常方便.
谢谢!
Rus*_*ias 42
PHP有一个功能headers_sent(),允许您在执行任何操作之前检查标头是否已经发送出去.以下是在代码中使用该函数的方法:
if(headers_sent())
{ //if headers already sent out print some message.
echo "Please go to yahoo.com";
}
else{
//send the user automatically to test.php
header('Location: http://yahoo.com');
exit;
}
Run Code Online (Sandbox Code Playgroud)
是的,你可以使用headers_sent函数.
检查标头是否或已经发送到何处.
一旦已经发送了标题块,就不能使用header()函数添加任何标题行.使用此功能,您至少可以防止获取与HTTP标头相关的错误消息.另一种选择是使用输出缓冲.
headers_list也可能是有意义的,它返回所有已发送标头的数组.