这个PHP语句没有返回任何结果。postgreSQL。我预计会看到几行。我做错了什么?如何检索它们并将它们放入对象或数组中?
$sth = $dbh->prepare('SELECT * FROM address');
$sth->execute();
$result = $sth->fetch(PDO::FETCH_ASSOC);
while($row = $sth->fetch()) {
echo $row['StreetAddress1'] . "\n";
} 发布于 2013-02-13 02:20:33
假设结果集是一个堆栈,每个fetch()调用都从一个结果行中弹出。您在while循环之外调用了fetch一次,然后显然抛出了$result。这意味着一行结果数据消失了。至于将它们放入对象/数组中,这取决于您。可以像这样简单:
$addresses[] = $row['StreetAddress1']在循环中。
任一
while($row = $sth->fetch()) {
...
}
-- or --
$rows = $sth->fetchAll();
foreach($rows as $row) {
...
}发布于 2013-02-13 02:26:36
$result = $sth->fetchAll();
$result将是一个包含所有结果的数组。
然后使用foreach循环遍历。
foreach
https://stackoverflow.com/questions/14839101
复制相似问题