PHP 结束标记的缺失:超出标头问题
广泛建议在末尾省略 PHP 结束标记 (?>)虽然标头问题在某些情况下似乎无关紧要,但还有其他令人信服的理由可以跳过此问题。
省略标签的潜在后果
过早发送标头可能会产生不可预见的后果,包括:
-
服务器兼容性: 生产服务器可能并不总是遵循最新的 PHP 趋势,导致输出缓冲被禁用。
-
功能中断:意外的 PHP 错误或行结尾可能会导致支付网关、重定向和其他功能出现问题。
-
浏览器错误: 在 Internet Explorer 中,AJAX 响应和包含过多行结尾的 JSON 可能会触发“页面加载取消”错误。
-
文件下载问题:下载也可能由于过多的行结尾而中断。
-
框架和标准合规性: Symfony、Zend、 Laravel 和 PSR-2 指南要求省略结尾
其他注意事项
-
第三方代码:某些库(例如 Smarty)可能包含附加行结束标记后的结尾。
-
正则表达式清理: 如果需要,可以使用正则表达式从所有相关文件中删除不必要的 PHP 结尾。
以上是我应该省略 PHP 结束标记 (`?>`) 吗?的详细内容。更多信息请关注PHP中文网其他相关文章!