下面的php代码来自我正在尝试创建的一个网站。基本上,我尝试将sql查询的内容转储到每行有4列的行中。
<?php
$prep_stmt = $conn->prepare("SELECT * FROM eggs WHERE `egg_dist` = 5");
$prep_stmt->execute();
$res = $prep_stmt->fetchAll();
//$row as $r
for($x = 0; $x < len($res); $x+=4) {
echo "<div class ='row'>";
for($y = $x; $y < $x+4; $y++){
echo "<div class = 'col-3 text-center'>".$res[$y]['name']."</div>";
}
echo "</div>";
}
?>
outer for循环应该执行结果查询长度的1/4。我想迭代查询数组中的4个条目的内部循环。我想用foreach循环来做这个,但是问题是在foreach的开始它会重新开始,所以我没有办法保存位置,因此我不得不用常规的for循环来做。
我的问题是 len($res)
,这在php中显然不存在。我想获取获取的prepared语句的数组长度,但不太明白如何获取。php官方文档显示使用fetchcolumn(),但我尝试的方式肯定是错误的。我还看到一个网站推荐使用len(),很明显这也不起作用,好像它起作用了,我就不会发表这篇文章了。
3条答案
按热度按时间kse8i1jr1#
您可以得到的行数返回如下
xxls0lw82#
对于行数,可以使用下面的代码。。
/行数/
/行数/
http://php.net/manual/en/pdo.prepare.php
b5buobof3#
或者如果只想打印姓名