【发布时间】:2016-07-25 12:21:49
【问题描述】:
我有以下代码:
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 中不可用。 stackoverflow.com/a/19076778/3184785.
-
您的示例代码不会失败,因为它没有显示您有多个 foreach 块在彼此之后的情况——这就是人们感到困惑的原因。代码不会在整个结果集的第一次迭代中停止,否则您会尝试第二次完整迭代。