Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从PDO'获取数组结果类型;s查询方法_Php_Mysql_Pdo - Fatal编程技术网

Php 从PDO'获取数组结果类型;s查询方法

Php 从PDO'获取数组结果类型;s查询方法,php,mysql,pdo,Php,Mysql,Pdo,当我们在SELECTquery中有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,它的类型是数组 但是当我们没有WH

当我们在
SELECT
query中有
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
,它的类型是
数组

但是当我们没有WHERE条件时,我们不需要准备语句,对吗?我们只使用
查询

$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()