在我的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';
?>
若然,影响是什么?
答案 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>