我遇到过一些以预期开头<?php
但不包含?>
以结束的开源 PHP 文件。
据我所知,它们在 Apache 和 PHP 8.0 上运行良好
哪些平台(如果有的话)会遇到此问题?
答案1
不用担心。
这可以。
这是格式化 PHP 文件的可接受方式仅有的如果文件是纯 PHP 代码,而不是像 HTML 那样夹杂着 PHP 代码片段。实际上,最好不是有一个 PHP 结束标签。
正如解释的那样PHP 官方手册中关于标签的部分:
如果文件仅包含 PHP 代码,则最好省略文件末尾的 PHP 结束标记。这可以防止在 PHP 结束标记后意外添加空格或新行,这可能会导致不良影响,因为当程序员无意在脚本中的该位置发送任何输出时,PHP 将启动输出缓冲。
<?php echo "Hello world"; // ... more code echo "Last statement"; // the script ends here with no PHP closing tag
我实际上不得不处理一些 WordPress 安装失败的问题,因为wp-config.php
,它不应该有 PHP 结束标记?>
,但却以某种方式添加了结束标记和文件末尾有空白,导致 WordPress 在 PHP/FastCGI 设置中运行不畅。