检查PDO查询是否已获取匹配条件

时间:2016-06-07 23:01:28

标签: php mysql pdo

我是一名需要帮助的新手PHP程序员。有没有办法检查循环中PDO中是否没有剩余记录?在while循环中,我正在添加其中一个字段并使用if语句来检查总数是否已超出变量。 在if语句中,我执行所有数据操作。我的问题是,如果没有足够的记录来删除变量我永远不会进行数据操作。

代码:

$stmt = $db->query("SELECT * FROM table WHERE ...  ");
while ($rows = $stmt->fetch(PDO::FETCH_ASSOC)) {
$add_column = $rows['number'];
$total_column = $total_column + $add_column;
//Other Stuff
if ($total_column > $variable_balance) {// Would like to also check here if there are no remaining records to fetch.
    //Do Stuff
    exit;
}
}

1 个答案:

答案 0 :(得分:-1)

您可以确保使用$stmt->fetchAll(PDO::FETCH_ASSOC)代替$stmt->fetch(PDO::FETCH_ASSOC)

来获取所有记录

如果你想使用fetchAll,你可以使用for-loop

$rows = $stmt->fetchAll(PDO::FETCH_ASSOC)) {
foreach($rows as $row) {
$add_column  = $row['number'];
//other stuff
}
}

这将自动执行所有记录的操作。