2.3. PHP 标记

未匹配的标注

使用 <?php ?>。

标记PHP代码有好几种不同的方式: <?php ?><?= ?><? ?>和 <% %>。虽然较短的标记可能输入更方便,但在默认情况下是禁用的,必须在PHP服务器配置 short_open_tag 选项启用。因此,能够确保在所有PHP服务器上都正常工作的唯一方式只有 <?php ?>。如果你可能将 PHP 部署到无法控制其配置的服务器上,那么应该始终使用 <?php ?>

幸运的是,无论是否启用了短标记 <?= 总是可用的, 因此可以放心的用这种缩写替代 <?php print() ?>

如果你是自己做开发,并且能够自由控制使用的 PHP 配置,那么你可能会觉得越短的标记越方便。但别忘了<? ?>可能与 XML 的声明冲突,而 <% %> 实际上是 ASP 的标记风格。

不论你选择哪种标记,请务必保持使用一致的风格!

要点

  • 在纯 PHP 文件中包含闭合 ?> 标记时(例如,在仅包含类定义的文件中),请确保不要在其后面带上任何尾随的换行符。当 PHP 解析器在结束标记后遇到单个换行符,可能会把后续其他行都输出到浏览器,如果之后要输出 HTTP 头可能会造成混淆。
  • 编写针对老版本 IE 的 Web 应用程序时,请确保不要在结束标记 ?> 和html的 <!doctype> 标记之间留下任何换行符。老版本的 IE 在 doctype 声明如果之前遇到任何空白字符,包括换行符,就会进入 混杂模式 (即以前那种未按照统一标准工作的模式,也叫怪异模式)。在新版IE以及其他更高级的浏览器(IE 以外的任何浏览器)上不存在这个问题。

延伸阅读

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/phpbestpractice...

译文地址:https://learnku.com/docs/phpbestpractice...

上一篇 下一篇
贡献者:1
讨论数量: 0
发起讨论 只看当前版本


暂无话题~