在PHP代码中哪一个更好的html技术?

时间:2018-01-18 10:56:42

标签: php html

从“技术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
  }
?>

2 个答案:

答案 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给有意见的人。我完全不同意,但无论如何。