在CodeIgniter中测试400错误处理时遇到了一件奇怪的事情。如何正确控制http状态码?
消息:无法修改标题信息 - 头已经发出(输出开始...)
HTTP状态代码始终是200,我终于发现有前新线<?php ...
。然后我检查了php文档,发现这个:
header()用于发送一个原始的HTTP头。有关HTTP头的更多信息,请参阅»HTTP/1.1规范。
请记住,必须在发送任何实际输出之前调用header(),或者通过普通的HTML标记,文件中的空行或PHP来发送。
那么如何在PHP中正确设置http状态码以确保它在任何输出之前? 我是php编程新手。谢谢你的回复!
-1使用'ob_start()'作为创可贴,但+1确认使用'ob_start()'作为创可贴是一个坏主意。 – 2011-11-27 18:35:50
@Phoenix,这就是为什么我说我建议用户在可能的情况下清理代码,而不是使用ob_start()方法。无论如何,如果他被迫迅速解决问题,没有时间或无法清理代码,ob_start()将起作用。 我希望你现在就能删除你的倒票。 – 2011-11-27 18:41:33
没有倒下;虚拟-1被虚拟+1取消。 – 2011-11-27 18:46:03