2
<?php
            foreach($pricelistline as $value) {
                $e = explode(",",$value);
                if ($e[0]) {
                    echo "<li>\n<img width=\"24\" height=\"24\" src=\"features_icons/" . $e[0] . ".png\" alt=\"\" class=\"\" />\n<span>" . str_replace("-", " ", ucfirst($e[0])) . "</span>\n</li>\n";
                }
            }
?>

还有这个_

<?php
            foreach($pricelistline as $value) {
                $e = explode(",",$value);
                if ($e[0]) {
?>
                    <li>
                        <img width="24" height="24" src="features_icons<?php echo $e[0]; ?>.png" alt="" class="" />
                        <span><?php echo str_replace("-", " ", ucfirst($e[0])); ?></span>
                    </li>
<?php
                }
            }
?>

一般来说,性能方面有什么不同吗?速度和负载有区别吗?

多次退出和进入php会降低性能吗?<?php >

哪一个被认为是更好的做法?

1 个 echo 实例与 2 个实例之间有什么区别吗?

4

2 回答 2

1

与回显字符串相反,进入和退出 PHP 的优点是文本编辑器可以语法高亮 HTML。如果它在 PHP 字符串中,则不能。

在性能方面,我认为差异完全微不足道,因此无关紧要。这是过早进行微优化的情况。无论您选择哪种方法,它肯定不会成为您应用程序的瓶颈。如果您的应用程序没有充分执行,那么进行分析以确定实际花费的时间太长。

于 2012-06-27T12:06:54.123 回答
0

PHP 编译器可能会将两者解析为几乎相同的内容,而不会产生显着的性能差异。一般来说,您在 PHP 中的输出方式并不是主要的性能问题。

$e[0]通过放入它自己的变量,优化逻辑的其他一些部分或使用ob_start('gz_handler')压缩输出以加快传输速度,您可能会节省更多的性能。

话虽如此,为什么不使用microtime()和迭代该特定代码几千次呢?在性能方面,衡量总是比某人的意见(包括我的意见)要好。更好的是,使用 XDebug 或真正的分析器来找出处理时间花费在哪里。

于 2012-06-27T12:12:04.360 回答