注意:我是而不是试图解决headers already sent
问题。我正在尝试创建 one!PHP:演示头已发送
我以为我明白是什么原因导致了这个错误,我试图向一些学生展示它。下面是一个示例脚本:
Hello
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
print 'This space for rent …';
setcookie('test',12);
header('Testing');
?>
正如你看到的,我想我最好设置一个头之前发送输出,无论是间接设置一个cookie,或者直接使用header()
功能。
听起来很奇怪,我该如何得到这个错误?
如果php.ini中的输出缓冲处于打开状态,它不会将错误作为输出在最后被捕获并发送。这有点像“懒惰的人”的方式来防止这些错误,而不是实际修复导致它们的脚本。你可以通过关闭输出缓冲或在输出之前用类似'ob_end_clean()'(然后输出,然后标题)来结束输出缓冲来创建错误。 –
我没有意识到可以在'php中做到这一点。 ini'。你的建议做到了。你能否将你的评论变成答案,以便我可以接受? – Manngo