当我们在SELECT
查询中有WHERE
条件时,我们可以使用 PDO 的 prepare 语句:
$sth = $db->prepare("SELECT name FROM mytable WHERE id > :id");
$sth->execute( array(":id"=>2) );
$result = $sth->fetchAll(PDO::FETCH_ASSOC);
所以我们得到变量$result
哪种类型是array
。
但是当我们没有WHERE
条件时,我们不需要准备语句,对吗? 我们只使用query
$result = $db->query("SELECT name FROM books");
但是现在,$result
类型不是array
,而是pdostatement
.
,获得array
类型(而不是pdostatement
)的最佳方法是什么?
$result = $db->query("SELECT name FROM books")->fetchAll(PDO::FETCH_ASSOC);
换句话说,$db->query()
既prepare()
又execute()