【发布时间】:2011-10-20 08:23:44
【问题描述】:
我有一个 while 循环正在运行,它从 MYSQL 表中返回值。它从查询中返回大约 90 个条目。我希望能够将这 90 个值分解并以 5 个为一组显示。这听起来可能令人困惑,所以让我分享一些代码示例以帮助澄清:
$con = mysql_connect("host", "username", "password") or die ("Unable to connect to server");
mysql_select_db("database") or die ("Unable to select database");
$sql = mysql_query("SELECT * FROM `table` WHERE column IS NOT NULL AND column <> ''");
在这里,我从表格中提取我需要的值...
while($row=mysql_fetch_array($sql))
{
$id=$row['id'];
$column=$row['column'];
echo $id . '<br>';
echo $column . '<br>';
}
此时,我已运行循环并显示所有 90 个条目。如何将值提取出来并以较小的块显示它们?如果我在 while 循环之外使用循环值,它只会给我集合中的最后一个值。有没有一种简单的方法可以使用列中唯一的 $id 值来获取循环中的特定分组?
【问题讨论】:
-
您希望它们按 5s 分组吗?还是通过他们的身份证?你两个都提到了。
-
您是否考虑过在您的 SQL 中使用
LIMIT子句? -
@Jason 我只是想知道如何做到这一点,所以不要太挑剔是使用 ID 还是按 5 分组。
-
@Presto:那么 Hammerite 的答案是 5 人一组的最佳选择。
标签: php mysql arrays loops while-loop