首頁 > 資料庫 > mysql教程 > 如何迭代 PDO 結果數組兩次?

如何迭代 PDO 結果數組兩次?

Mary-Kate Olsen
發布: 2024-11-28 17:57:13
原創
731 人瀏覽過

How Can I Iterate Through a PDO Result Array Twice?

根據 PDO 結果迭代數組兩次

使用 PDO 時,可能需要多次迭代獲取的數組。然而,與 MySQL 的 mysql_data_seek() 方法不同,PDO 不提供直接重置陣列指標的方法。要實現相同的功能,必須採用替代方法。

解決方案是將獲取的結果儲存到數組中,然後迭代該數組兩次。以下是範例:

$pdo = new PDO('mysql:host=' . $host . ';dbname='.$database, $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$stmt = $pdo->prepare('SELECT * FROM mytable WHERE active = 1 ORDER BY name ASC');
$stmt->setFetchMode(PDO::FETCH_ASSOC);
$stmt->execute();

$rows = $stmt->fetchAll();

foreach ($rows as $r) {
    // first run
}

foreach ($rows as $r) {
    // seconds run
}
登入後複製

在修改後的程式碼中:

  • 使用 fetchAll() 將查詢結果擷取到陣列中。
  • 兩個單獨的 foreach 迴圈用於迭代數組兩次。

透過將結果儲存到array,保留了對同一數組進行兩次迭代(每次都從第 0 行開始)的初衷。此方法為處理 PDO 結果提供了強大且高效的解決方案。

以上是如何迭代 PDO 結果數組兩次?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板