清除以前设置的标头 php

2022-08-30 20:51:51

我想知道是否有可能清除存储在header_list()中的当前信息

if(headers_sent()){
    foreach(headers_list() as $header){
        header_remove($header);
    }
}
var_dump(headers_list());

答案 1

headers_sent表示删除标头为时已晚。它们已被发送。因此,函数的名称。

您需要的是专门检查标头是否尚未发送。然后您知道修改它们是安全的。

if (!headers_sent()) {
  foreach (headers_list() as $header)
    header_remove($header);
}

答案 2

要将它们全部删除,非常简单:

if ( ! headers_sent() ) {
    header_remove();
}

无需循环。如果不将参数传递给 ,则会删除 PHP 设置的所有标头。header_remove


推荐