如何迭代MySQLi结果集中的结果?
我想遍历以下查询的结果集:
select uid from userbase
我当前使用以下循环,但我只能获得第一个值。
$i = 0;
$output = mysqli_query($mysqli, "select uid from userbase");
while ($row = $output->fetch_array()) {
$deviceToken = $row[$i];
echo $deviceToken;
$i++;
}
可能是什么问题?是fetch_array()
吗?
解决方案
您需要定义一个数组并将数据存储到循环内的数组中。
使用MYSQLI_ASSOC
无需递增的值
$deviceToken=array();
while ($row = $output->fetch_array(MYSQLI_ASSOC)) {
$deviceToken[] = $row['uid'];
}
print_r($deviceToken);
for($i=0;$i<=count($deviceToken);$i++){
echo $deviceToken[$i];
}
相关文章