繁体   English   中英

SELECT * FROM`users`仅返回第一个用户

[英]SELECT * FROM `users` returns only first user

我有一个PHP脚本:

$sql = $db->query("SELECT * FROM  `users`");
$row = $sql->fetch();
foreach($row as $value){
    echo $value . "<br>";
}

数据库“用户”包含29条记录,但是我得到了:

在此处输入图片说明

这是因为您只获取一条记录。

尝试这样的代码:

$sql = $db->query("SELECT * FROM  `users`");
$row = $sql->fetchAll();
foreach($row as $value){
    print_r($value);
    echo "<br>";
}

这样,您将获得一个结果数组,因此可以遍历该数组而不是遍历属性。

fetch()返回单个元素。 而是尝试使用fetchAll

$row = $sql->fetchAll();

fetchAll —返回包含所有结果集行的数组

它会返回一个数组,因此,删除echo $value并使用print_r($value)

fetch —从结果集中仅获取1行

mysql fetch()函数仅从结果集的一行中获取下一行,而mysql fetchAll()函数返回一个包含所有结果集行的数组。

因此,使用fetchAll()从结果fetchAll()获取所有记录,替换此行

$row = $sql->fetch();

$row = $sql->fetchAll();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM