您好我正在尝试使用php中的pdo查询数据库以返回我的数据库中的所有信息,我正确连接到数据库但是当我尝试返回所有数据库信息并打印它时,我得到了这个结果从我的函数>
返回PDOStatement对象([queryString] => SELECT * FROM users)
我想让函数返回整个数据库信息。这是我的代码,非常感谢您的帮助,谢谢。
public function resetpassword()
{
try
{
$conn = new PDO( DB_DSN, DB_USERNAME, DB_PASSWORD );
$conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$sql = 'SELECT * FROM users';
$result = $conn->query($sql);
return $result;
$conn = null;
}
catch(PDOException $e)
{
return 'Database Error';
}
}
这是我用来打印该函数结果的代码:
print_r ($usr->resetpassword());
答案 0 :(得分:1)
$ result将结果设置为PDOStatement对象。如果使用fetchAll()
,它将以数据数组的形式获取数据。虽然您可以遍历PDOStatement对象结果集并提取数据。像这样:
foreach ($conn->query($sql) as $row) {
echo $row['yourColumnName'];
}
试试这个:
<?php
class Database{
public function resetpassword()
{
try
{
$conn = new PDO( DB_DSN, DB_USERNAME, DB_PASSWORD );
$conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$sql = 'SELECT * FROM users';
$s = $conn->query($sql);
return $s->fetchAll(PDO::FETCH_ASSOC);
$conn = null;
}
catch(PDOException $e)
{
return 'Database Error';
}
}
}
$usr=new Database();
var_dump($usr->resetpassword());