<! - ?php和? - >标签的数量会影响性能吗?

时间:2014-02-13 19:10:46

标签: php wordpress performance zend-framework

在我的php文件中,我想知道开始和结束标签是否会对性能产生影响。

即。

<?php echo 'Hello world'; ?>
<?php echo 'Hello world'; ?>
<?php echo 'Hello world'; ?>
<?php echo 'Hello world'; ?>
<?php echo 'Hello world'; ?>

VS

<?php
  echo 'Hello world';
  echo 'Hello world';
  echo 'Hello world';
  echo 'Hello world';
  echo 'Hello world';
?>

若然,影响是什么?

2 个答案:

答案 0 :(得分:16)

是否会对性能产生影响?是。只是因为解析器有更多的文本要解析。它必须产生影响。是的,它会产生可衡量的影响。

它有影响吗?一点都不。即使您的应用中有数百万个,您也很难看到任何差异。是的,会有更多的时钟周期,但是很简单...

更重要的是要注意这两段代码一般不相同。 PHP将在结束?>后删除一个新行,但?>之后的任何其他字符将在输出中呈现。因此,?>之后的尾随空格或多个换行符将直接呈现。

所以我的建议是忽略性能,编写正确且更易读的代码(语义更正确的代码)。并忽略小的性能差异......

答案 1 :(得分:3)

我想尽可能地在PHP包装内部进行整合,而不会牺牲可读性/功能。除非你特别有理由打破(或使用) PHP(例如输入相当数量的HTML),为什么要这样做呢?

性能影响很小,无论如何都是服务器端。如果你真的担心的话,你可以测试你的页面加载时间,但我会下注测试它所需的时间是它将添加的实际负载的指数。

以例如:

<?php
  $foo = 'writing code';
  echo "<h1 class=\"hstyle4\">Hello World</h1>";
  echo "<p>I am {$foo}, specifically HTML, inside of PHP using echo.";
  echo 'but I could just as easily have broken it into html and used only what I needed.</p>';
?>

对战

<?php $foo = 'writing code'; ?>
<h1 class="hstyle4">Hello World</h1>
<p>I am <?php echo $foo; ?>, specifically HTML, outside of PHP. It's probably a lot more readable this way, and doesn't impact the server nearly as much by parsing unnecessary code that could have easily been handled another way.</p>