【发布时间】:2011-07-19 19:53:43
【问题描述】:
所以我对 PHP、MySQL 和 Javascript 还有些陌生,但我一直在做一个项目,所以我学得很快。但是,我觉得在我的 php 页面中我混合了太多的 HTML 和 PHP。起初我认为这是标准做法,但 SO 上的某个人告诉我不要将两者混为一谈,我开始查看我的代码。
例如,当加载提交页面时,我有一个看起来像这样的循环(精简版):
<?php
while ($row = mysql_fetch_assoc($submissionQuery))
{
$submissionID = $row['id'];
?>
<div class="submission" id="submission<?php echo $submissionID; ?>">
<h3><?php echo $row['title']; ?></h3>
</div>
<?php } ?>
我之所以不将整个代码块都包含在 PHP 中,是因为那里不仅有一个 h3,而且我不想使用批量回显语句。
在我看来,这看起来很糟糕,我想知道一种更好的方法。我想我可以将所有提交的内容存储到一个数组中,然后在以后循环它们,但我看到了一些缺点:
1) 不必要地将值存储到数组中。只会在之后立即召回它们。
2) 如果提交的内容很多,则可能没有足够的内存来存储它们。
3) 需要更多代码。
4) 稍后仍然需要循环遍历数组,在这种情况下,我仍在混合 PHP 和 HTML(只是程度较低)
我不知道。我只需要一些建议来最好地处理这个问题,因为我不想以错误的方式做事,然后在以后出现问题或变得过于复杂时必须重构所有内容。
【问题讨论】:
-
您可能会发现the alternative syntax for control structures 很有帮助。