我正在尝试做一些非常简单的事情。
我找不到任何没有参数的 PDO 查询的使用示例。 mysqli 是我的后备...试图避免使用 MYSQL,因为每个人都一直提示我不使用它。
所以我尝试了这个:
$db = new mysqli('hostname', 'user', 'pass', 'db');
$dbh = new PDO("mysql:host=hostname;dbname=db", "user", "pass");
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$types = $db->query("SELECT * from `a_types` ORDER BY `priority`");
while ($type = $db->fetch_array($types)) {
echo '<a href="{$_SERVER[PHP_SELF]}?{$type[title]}=choose">I have a broken {$type[title]}.</a> <br />';
}
但我遇到以下问题: fatal error :调用未定义的方法 mysqli::fetch_array()
我做错了什么?
另外:当我调用$db
时,我是否必须在完成后关闭连接?/我该怎么做?
最佳答案
您尝试在 $db
上调用 fetch_array
,而不是在 $types
上调用。
$db->query()
返回您存储在 $types
中的结果集。通过此结果集,您可以使用 fetch_array
等函数循环遍历结果。
$result = $db->query('SELECT blabla');
while($type = $result->fetch_array()){
// do stuff
}
//编辑:由于代码更干净,关闭连接总是更好。一般来说,当您删除对象时,连接也会关闭(脚本完成时也会发生这种情况)。
关于php - 找不到简单查询的使用示例并且有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23141992/