从“技术1”和“技术2”下面的代码中哪一种更好的技术
“技术1”
<?php
for($i=0; $i<=10; $i++)
{
echo '<div>Row data '.$i.'</div>';
}
?>
“技术2”
<?php
for($i=0; $i<=10; $i++)
{
?> <div>Row data <?php echo $i; ?> </div> <?php
}
?>
答案 0 :(得分:2)
首先,我建议使用像Twig,Blade等PHP模板引擎之一。 其次,如果你想避免T.E.并使用PHP中的一种内置方法我建议Alternative syntax:
<?php for ($i = 0; $i < 10; $i++): ?>
<div>Row data <?= $i; ?> </div>
<?php endfor; ?>
答案 1 :(得分:0)
我想这两个都是相似的。我认为第一个看起来更整洁,有些人更喜欢第二个。
我更喜欢构建一个html
的字符串,然后将其吐出来,这可能是性能出现问题并且连接比显示更快的回归,因此concatenate
然后echo once
。我很确定这只是意见和选择。 (我也使用标签,并在同一行上打开括号,除非IDE为我移动...更多选择和意见)
这是一个方法的例子:
某处是一个班级:
function showAThing(){
$thing = new MakeAThing();
echo($thing->htmlOut);
}
MakeAThing类中的:
var $htmlOut;
function __construct(){
for($i=0; $i<=10; $i++){
$this->htmlOut .= '<div>Row data '.$i.'</div>';
}
}
当然这是一个人为的例子。你可以abstract
进一步,如果你也喜欢它,但它稍微让人讨厌。
here is a link给有意见的人。我完全不同意,但无论如何。