從MySQL 遷移到PDO:保留數組指標
與MySQL 的mysql_data_seek() 方法相比,PDO 提供了不同的獲取資料的方法。要有效地多次迭代數組,請按照以下步驟操作:
將結果保存到數組:
不要直接依賴PDO 語句,而是將結果保存到使用fetchAll() 方法的陣列。這允許您以更受控的方式使用陣列。
程式碼:
<code class="php">$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();</code>
使用Foreach 循環進行迭代:
現在,您可以使用foreach 循環根據需要使用foreach 循環根據需要多次迭代數組。這種方法使您能夠從數組中的第一個元素開始每次迭代。
代碼:
<code class="php">foreach ($rows as $r) { // First iteration } foreach ($rows as $r) { // Second iteration }</code>
範例:
假設您有一個名稱數組儲存在 $rows 中。以下程式碼示範如何迭代兩次:
<code class="php">foreach ($rows as $name) { echo $name . "<br>"; // First run: Display all names vertically } foreach ($rows as $name) { echo $name . " "; // Second run: Display all names horizontally }</code>
優點:
以上是從 MySQL 遷移到 PDO 後如何多次迭代數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!