我看到的一些 PHP 代码到处都是“”标记,具体取决于它是否输出 HTML。与使用 echo 编写 HTML 相比,这样做有什么性能优势吗?当代码通过“
请注意,我不只是在谈论偶尔的切换。我目前正在查看的代码(mantis-bt 源代码)让我头疼的是它的切换次数。非常非常难读。
我想知道他们这样做是否有原因?
最佳答案
就可读性而言,我宁愿看到:
<ul>
<?php foreach ($items as $item): ?>
<li>
<a href="<?php esc($item->url)?>">
<img src="<?php esc($item->icon)?>"/>
<?php esc($item->text)?>
</li>
<?php endforeach; ?>
</ul>
比:
echo "<ul>";
foreach ($items as $item)
{
echo "<li>";
echo '<a href="'.esc($item->url).'">';
echo '<img src="'.esc($item->icon).'"/>';
echo esc($item->text);
echo '</li>';
}
echo "</ul>";
不仅如此,后者还允许您选择的 IDE 处理 HTML 语法和格式(例如,告诉您缺少 </a>
)。所以,除非在短小的 HTML 之间有更多的事情发生,<?php
可能更可取。
编辑:至于性能,任何认真对待代码速度的人都会激活一个缓存预编译器,它将两个版本归结为完全相同的东西。
关于php - 大量使用 PHP 的 "<?php"标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4682180/