我正在寻找一种从数据库中选择的方法,然后检查结果,然后在 while 循环中输出行(如果结果高于零)
我真的想避免使用单独的计数查询
现在我用这个:
$sql = 'SELECT id, username, usercity, usercountry FROM siteusers WHERE userage > 50';
$STH = $conn->query($sql);
$arr = $STH->fetchAll();
if (count($arr) > 0) {
echo '<div id="users">';
foreach ($arr as $row) {
echo '<h1>'.$row['username'].</h1>';
}
echo '</div>';
}
有用。但是有没有一种方法可以检查结果/行数并循环行,而不使用 fetchAll 和自定义 for-each 循环?
还是根本不重要?(for-each 和 while 循环一样好吗?)
如果我这样做,则第一行不包含在 while 循环中:
$sql = 'SELECT id, username, usercity, usercountry FROM siteusers WHERE userage > 50';
$STH = $conn->query($sql);
if ($row = $STH->fetch()) {
echo '<div id="users">';
while ($row = $STH->fetch()) {
echo '<h1>'.$row['username'].</h1>';
}
echo '</div>';
}
编辑:出于动态布局目的,我确实需要检查结果