在HTML中使用时,PHP语法的最佳实践是什么?

时间:2011-10-04 11:04:05

标签: php html

我想知道在HTML中使用PHP时最佳做法是什么?你会用echo的短标签吗?你会在if / else语句等上使用大括号吗?

请不要评论使用模板系统或我应该使用MVC。我正在研究一个我被要求更新和修改的项目。

这是我写的一段代码:

<div class="left">
    <ul>
        <?php foreach ($data['vars']['groupslist'][1] as $key => $group): ?>
        <li><?php echo $group->title; ?></li>
        <?php endforeach; ?>
    </ul>
</div>

注意我使用了:endforeach;。你会做什么?

谢谢!

7 个答案:

答案 0 :(得分:4)

在PHP模板中,这也是我的方式(foreach / endforeach)。

但实际上,在语法方面,这只是一个偏好问题。因此,没有“最佳实践”。选择你喜欢的 - 更重要的是 - 坚持下去

我确信这两种方法都有充分的理由。

答案 1 :(得分:3)

我的代码看起来像这样:

<div class="left"> 
    <ul> 
        <? foreach ($data['vars']['groupslist'][1] as $group) { ?> 
           <li><?=$group->title?></li> 
        <? } ?> 
    </ul> 
</div> 

答案 2 :(得分:3)

  

注意我使用过:和endforeach;你会做什么?

就是这样。在与HTML混合的PHP中,很难弄清楚哪个{与哪个}相关。 endif和endforeach只是更具描述性。

答案 3 :(得分:1)

我建议做一些像

这样的事情
<?php
    foreach( $data['vars']['groupslist'][1] as $key=>$group)
        echo '<li>'.$group->title.'</li>';
?>

晒。

答案 4 :(得分:1)

我会像你一样完成。如果将代码迁移到禁用短标记的服务器,则使用短标记可能会导致问题。我个人觉得很难读,但那可能是因为我不使用它。

使用foreach块不仅可以让源代码更易于阅读,而且HTML也更容易格式化。

答案 5 :(得分:0)

我更喜欢你为这个案子所做的事情而不是替代品。虽然我会使用<?=输出$group->title

答案 6 :(得分:0)

  

你会使用短标签来回声吗?

肯定是的。
这正是短标签的用途。

  

你会在if / else语句等上使用大括号吗?

这取决于。
虽然替代语法看起来很整洁,但我知道没有可以突出显示它的编辑器,所以,为了突出显示,我正慢慢地回到curlies。

无论如何,您可以使用任一方法在语句末尾输入;