我有一个如下的php文件:
<?php
ob_start();
header("Location:http://google.com");
echo "hello world";
die(ob_get_clean());
?>
我希望在浏览器中看到世界,但是它重定向到Google。 ob_get_clean应该清除包括标题的输出,对吗? 结果应该是die(“ hello world”); 那为什么会这样呢?
答案 0 :(得分:1)
否,不缓冲头。来自documentation:
此功能将打开输出缓冲。启用输出缓冲后,不会从脚本(头文件以外)发送任何输出,而是将输出存储在内部缓冲区中。
答案 1 :(得分:1)
header("Location:http://google.com");
这意味着页面将在缓冲区启动时重定向到google.com。 缓冲区用于存储输出数据,但在这种情况下,页面将重定向到其他站点。因此,代码位置不正确。