标签:while-loop loops sql php database
是否可以,如果可以,如何选择数据库中表中的所有条目,然后一次显示五个结果.
含义:例如,我的数据库中总共有15条记录,那么我想像这样显示数据:
<div class="1-5">Record[1], Record[2], Record[3], Record[4], Record[5]</div>
<div class="6-10">Record[6], Record[7], Record[8], Record[9], Record[10]</div>
<div class="11-15">Record[11], Record[12], Record[13], Record[14], Record[15]</div>
我不能完全确定是否可以使用SQL语句执行此操作,还是必须编写某种“ do … while”或循环来检索每组数据.我也考虑过数组问题,但还没有得出结果.
谢谢
>梅斯蒂卡
解决方法:
我发现array_chunk()
对于这种事情非常有用.
// pull all the records into an array
$query = mysql_query('SELECT * FROM mytable');
$rows = array();
while ($row = mysql_fetch_array($query)) {
$rows[] = $row;
}
// this turns an array into an array of arrays where each sub-array is
// 5 entries from the original
$groups = array_chunk($rows, 5);
// process each group one after the other
$start = 1;
foreach ($groups as $group) {
$end = $start + 4;
// $group is a group of 5 rows. process as required
$content = implode(', ', $group);
echo <<<END
<div class="$start-$end">$content</div>
END;
$start += 5;
}
当然,您可以先阅读所有内容,而不必先阅读所有内容,但这并没有多大区别,并且上述版本可能比实现适当的中断条件更具可读性当您从数据库读取行时.
标签:while-loop,loops,sql,php,database 来源: https://codeday.me/bug/20191024/1919663.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。