Php 从“用户”中选择*只返回第一个用户
我有一个php脚本:Php 从“用户”中选择*只返回第一个用户,php,mysql,Php,Mysql,我有一个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 = $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>";
}
这样,您将获得一个结果数组,因此您可以在数组上循环,而不是在属性上循环。这是因为您只获取一条记录 请像这样尝试您的代码:
$sql = $db->query("SELECT * FROM `users`");
$row = $sql->fetchAll();
foreach($row as $value){
print_r($value);
echo "<br>";
}
通过这种方式,您将获得一个结果数组,因此您可以在该数组上循环,而不是在属性上循环。mysql fetch函数只从结果集中获取1行下一行,而mysql fetchAll函数返回一个包含所有结果集行的数组
因此,使用fetchAll从resultset获取所有记录,替换此行
$row = $sql->fetch();
与
mysql fetch函数只从结果集中获取下一行,而mysql fetchAll函数返回一个包含所有结果集行的数组
因此,使用fetchAll从resultset获取所有记录,替换此行
$row = $sql->fetch();
与
返回单个元素。相反,尝试使用
fetchAll-返回包含所有结果集行的数组
它将返回一个数组,因此,删除echo$value并使用print\r$value
fetch-仅从结果集中的1行获取下一行
返回单个元素。相反,尝试使用
fetchAll-返回包含所有结果集行的数组
它将返回一个数组,因此,删除echo$value并使用print\r$value
fetch-仅从结果集中的1行获取下一行
您使用的是什么数据库适配器?PDO/MySQLi?我正在使用PDO适配器。使用fetchAll而不是fetch。您使用的是什么数据库适配器?PDO/MySQLi?我正在使用PDO适配器。使用fetchAll而不是fetch。