Php PDO是否会在最后一站->;fetchAll(PDO::FETCH_COLUMN,$COLUMN)是否在每次调用时都重新运行查询?
我正在执行一个获取两个字段的查询。Php PDO是否会在最后一站->;fetchAll(PDO::FETCH_COLUMN,$COLUMN)是否在每次调用时都重新运行查询?,php,performance,pdo,Php,Performance,Pdo,我正在执行一个获取两个字段的查询。 我需要将每个字段放入不同的数组中。 这将为每个调用重新运行查询,还是只是重新迭代结果集 $a= Laststatment->fetchAll(PDO::FETCH_COLUMN,0); $b= Laststatment->fetchAll(PDO::FETCH_COLUMN,1); 选项3:它根本不会在resultset上重复,因为所有内容都已被提取,第二次调用将返回一个空数组(至少在这里是这样) 也就是说:MySQL没有可滚动的游标,我没有尝试
我需要将每个字段放入不同的数组中。
这将为每个调用重新运行查询,还是只是重新迭代结果集
$a= Laststatment->fetchAll(PDO::FETCH_COLUMN,0);
$b= Laststatment->fetchAll(PDO::FETCH_COLUMN,1);
选项3:它根本不会在resultset上重复,因为所有内容都已被提取,第二次调用将返回一个空数组(至少在这里是这样)
也就是说:MySQL没有可滚动的游标,我没有尝试过使用PDO::cursor\u滚动可能性的其他数据库。选项3:它根本不会在resultset上重复,因为所有内容都已获取,第二次调用将返回空数组(至少在这里是这样) 也就是说:MySQL没有可滚动的游标,我没有尝试过使用PDO::cursor\u滚动可能性的其他数据库。您可以使用fetchColumn()。请参阅手册,您可以使用fetchColumn()。参见手册
$a = array();
$b = array();
while($r = $laststatement->fetch(PDO::FETCH_NUM)){
$a[] = $r[0];
$b[] = $r[1];
}