http_response_code
函数似乎应该像header
一样工作,因为它需要在发送任何输出之前调用它。但是,PHP手册没有提到这一点。这样做有用吗?例如,以下程序是否会产生错误?
<!DOCTYPE html>
<html>
<?php
http_response_code(404);
?>
</html>
如果没有,为什么header
会以这种方式工作,而不是http_response_code
?
答案 0 :(得分:0)
对这个函数的PHP手册的评论之一总结得很好:
http_response_code基本上是编写http的简写方式 状态标题,增加了奖金,PHP将合适 通过将您的响应代码与其中一个匹配来提供的原因短语 它所维护的枚举中的值 PHP-SRC /主/ http_status_codes.h。请注意,这意味着您的回复 代码必须与PHP知道的响应代码相匹配。你无法创造 你自己的响应代码使用这种方法,但你可以使用 标题方法。
总结 - “http_response_code”和“标题”之间的区别 用于设置响应代码:
使用http_response_code将导致PHP匹配并从硬编码到PHP中的原因短语列表中应用原因短语 源代码。
- 醇>
由于上面的第1点,如果您使用http_response_code,则必须设置PHP知道的代码。您无法设置自己的自定义代码, 但是,如果您使用,则可以设置自定义代码(和原因短语) 标题方法。