这很多嵌入式while循环是不是很糟糕?

时间:2011-07-10 02:55:21

标签: php while-loop

我有一个while循环,可以从用户那里获取帖子并显示它们(如下)。我希望能够在帖子下方显示评论。问题是帖子是通过while循环生成的。为了在每个帖子下面生成评论,我需要嵌入while循环。我不知道这是可能的还是正确的方法。任何帮助表示赞赏。

代码:

<?php
$get=mysql_query("SELECT * FROM table WHERE id='$id' ORDER BY rank DESC");
    while ($row=mysql_fetch_assoc($get)){
             $post=$row['post'];
            echo "<div class='postcontainer'>$post</div>";
            echo //i need the comments to go here
            }
  ?>

3 个答案:

答案 0 :(得分:2)

除了深度嵌套几乎总是表明软件中的设计缺陷之外,没有规则指定嵌套的深度。你要做的事情的描述并不是一个这样的设计缺陷。祝你好运。

答案 1 :(得分:1)

没有理由不嵌套while循环,它是许多操作的首选方法。我看到可行代码深入五六个循环。唯一的区别是,对于大量数据,它会更慢,因为您将效率从O(n)提高到O(n^2)

我总是先采用让它先工作的方法,然后再进行优化。

答案 2 :(得分:1)

是的,很有可能在PHP中嵌套任何类型的循环。实际上,用于常见“冒泡排序”的算法涉及使用嵌套循环。

http://en.wikipedia.org/wiki/Bubble_sort

所以不用担心。虽然这可能很棘手......

快速搜索显示了使用PHP编码的冒泡排序示例

http://www.metalshell.com/source_code/118/Bubble_Sort.html

此外,我已经编程多年了,我在PHP中使用了一些深度嵌套的循环...通常用于导航树,最近一个脚本可以找出哪些项目适合装运的盒子。