我有以下代碼:PHP/PDO - 使用PDO語句多次使用多個的foreach循環時
if(!empty($postCountryAdd)) {
$sqlQueryLocalityAdd = $dbh->prepare("SELECT DISTINCT locality_add FROM table WHERE country_add = :country_add ORDER BY locality_add ASC");
$sqlQueryLocalityAdd->execute(array(':country_add' => $postCountryAdd));
echo '<option value="">Select locality</option>';
foreach($sqlQueryLocalityAdd as $localityAddRow) {
//while ($localityAddRow = $sqlQueryLocalityAdd->fetch()){
echo '<option value="';
echo $localityAddRow["locality_add"];
echo '">';
echo $localityAddRow["locality_add"];
echo '</option>';
}
}
如果我使用foreach($sqlQueryLocalityAdd as $localityAddRow)
代碼停止響應。爲什麼我不能多次使用foreach?我該如何修復它?
也許有趣?指出可滾動遊標在mysql中不可用。 http://stackoverflow.com/a/19076778/3184785。 –
你的示例代碼不會失敗,因爲它沒有顯示你有多個foreach塊之後的情況 - 這就是爲什麼人們感到困惑。代碼不會在整個結果集的第一次迭代中停止,有些情況下您還在嘗試第二次完整迭代。 – Ray