我只是想知道什么是更昂贵的,比如:
echo "Hello world, my name is $name";
或
echo 'Hello world, my name is '.$name;
我知道在这种情况下它不会有太大的区别,但也许在这里它会:
for($i = 0; $i < 10000; $i++)
{
echo 'Hello world, my name is '.$name;
}
提前致谢!
答案 0 :(得分:17)
就个人而言,我会使用:
echo 'Hello ' , $name;
echo接受多个参数,因此不需要连接这样的东西。 这是benchmark,显示'和'之间的差异(几乎没有)。但是,“允许转义序列(\ n等)和变量扩展。
这种类型的东西是微优化,你不应该担心它。请参阅以下有关优化的主题:
How important is optimization? https://stackoverflow.com/questions/127765/php-optimization-tips Optimizing PHP string concatenation
答案 1 :(得分:0)
答案 2 :(得分:0)
第一种情况下运行1000000次迭代需要0.671秒,而在我的计算机上运行第二种情况需要0.494秒。
所以,''比“”更快。
我在Pentium 4 2.4GHz上使用PHP 5.2.4-2ubuntu5.6
答案 3 :(得分:0)
请参阅The PHP Benchmark ...
的“字符串输出”部分或者只是写一些蹩脚的微型循环并自己测试它们。
ob_start();
$s = microtime(true);
for ($i=0; $i<10000; $i++)
echo 'Hello world, my name is '.$i."\n";
$end = microtime(true) - $s;
ob_end_clean();
echo $end;
答案 4 :(得分:0)
除了使用单引号和连接的更高效率之外,我更喜欢这种风格,因为我的编辑器的语法突出显示效果更好。它非常清楚,该行的哪一部分是字符串文字,哪一部分是变量。
您也可以在Stack Overflow的语法高亮显示中看到这一点。