Amalan Terbaik untuk Pengiraan Baris dengan PDO
Mendapatkan kiraan baris menggunakan PDO dalam PHP boleh menjadi topik perdebatan. Artikel ini menangani isu ini dan memberikan panduan tentang pendekatan optimum.
Mengelakkan fetchAll untuk Set Data Besar
Menggunakan fetchAll untuk mendapatkan semula semua baris mungkin tidak sesuai untuk set data yang besar kerana kepada kebimbangan penggunaan ingatan. Sebaliknya, pertimbangkan untuk membuat pertanyaan kepada pangkalan data secara terus untuk kiraan baris.
Menggunakan Count(*) dengan PDO
Untuk mendapatkan semula kiraan baris dengan cekap, gunakan pertanyaan seperti:
$sql = "SELECT count(*) FROM `table` WHERE foo = ?"; $result = $con->prepare($sql); $result->execute([$bar]); $number_of_rows = $result->fetchColumn();
Pendekatan ini memanfaatkan keupayaan pangkalan data untuk melaksanakan baris mengira.
rowCount() untuk Penyata PDO
PDO juga menawarkan kaedah rowCount() untuk objek PDOStatement. Walau bagaimanapun, kebolehpercayaannya untuk mendapatkan semula kiraan baris berbeza-beza merentas pangkalan data. Ia mungkin tidak selalu berfungsi untuk pernyataan SELECT dalam semua senario.
Pendekatan Alternatif dengan fetchAll
Jika anda memerlukan kedua-dua kiraan baris dan data itu sendiri, gunakan PDO:: fetchAll() untuk mendapatkan semula data ke dalam tatasusunan. Fungsi count() kemudiannya boleh digunakan untuk menentukan bilangan baris.
Contoh Penyata Disediakan
Berikut ialah contoh menggunakan pernyataan yang disediakan:
$nRows = $pdo->query('select count(*) from blah')->fetchColumn(); echo $nRows;
Atas ialah kandungan terperinci Apakah Cara Terbaik untuk Mendapatkan Kiraan Baris Menggunakan PDO dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!