Mengulang Tatasusunan Dua Kali daripada Hasil PDO
Apabila bekerja dengan PDO, mungkin perlu mengulangi tatasusunan yang diambil beberapa kali. Walau bagaimanapun, tidak seperti kaedah mysql_data_seek() MySQL, PDO tidak menyediakan cara langsung untuk menetapkan semula penunjuk tatasusunan. Untuk mencapai kefungsian yang sama, pendekatan alternatif mesti digunakan.
Penyelesaian terletak pada menyimpan hasil yang diambil ke dalam tatasusunan dan kemudian mengulangi tatasusunan itu dua kali. Berikut ialah contoh:
$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 }
Dalam kod yang disemak ini:
Dengan menyimpan keputusan ke dalam tatasusunan, niat asal untuk mengulang tatasusunan yang sama dua kali, bermula dengan sifar baris setiap kali, dikekalkan. Kaedah ini menyediakan penyelesaian yang teguh dan cekap untuk bekerja dengan hasil PDO.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengulang Melalui Tatasusunan Keputusan PDO Dua Kali?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!