我一直看到的是
<?php $page_title = ""; ?>
<?php include_once("inc/header.php"); /* Include Header */ ?>
与
<?php
$page_title = "";
include_once("inc/header.php"); /* Include Header */
?>
我认为功能上没有区别(但不确定),但是如果你在几个php块中声明所有的php或者单个一个,那么语义/正确是否重要?性能是否会受到影响?
答案 0 :(得分:1)
对此没有真正的答案。
有些人喜欢将它设置为“Code-Block” - 并将其全部放在一组标签中,其他一些人更喜欢“HTML-Tag” - 他们将每个命令放在一组新的标签中
除了一个?>
和下一个<?php
之间的所有内容都得到回声之外,功能没有区别(所以你的输出HTML中有很多空格,这没关系,因为他们被忽略了)
性能可能会受到影响,但在数量上你真的不需要关心。
通常,如果您使用的是模板(或者说,混合使用PHTML,HTML和PHP),请尝试将所有命令保持为单行(将所有单个命令放在<?php ?>
和自己的行中),这将使其在所有HTML标记之间更具可读性。
如果您的PHP文件中没有HTML,则没有理由用PHP标记包含所有命令
答案 1 :(得分:1)
这是为什么你的PHP内联不合时宜的一个主要原因。我所知道的并没有打击性能。所有<?php ?>
都告诉解释器这将由PHP处理,因此您的第一个代码块正在说
停止解析PHP
开始解析PHP
我想如果你试图将最后一盎司的效率拧掉,那么某处会有一些微不足道的打击,但我认为这是微不足道的。对用户来说很重要的是,如果你正在使用操作码缓存(并且你应该),那么唯一的命中就是在解析端。重复执行缓存会产生0效果。
但是,可读性确实要求您的代码尽可能紧凑。请记住,有人可能会来到你身后并处理这段代码。有两个块只需要一个是低效的。