Menentukan Kiraan Baris dengan PDO
Apabila bekerja dengan PHP dan PDO, adalah penting untuk memilih kaedah yang optimum untuk mendapatkan semula kiraan baris. Walaupun mysql_num_rows biasanya digunakan sebelum PDO, pendekatan ini tidak selalunya sesuai untuk set data yang besar.
Penyelesaian pilihan apabila hanya bilangan baris diperlukan adalah menggunakan fungsi pengiraan pangkalan data. Ini boleh dicapai dengan pertanyaan seperti berikut:
$sql = "SELECT count(*) FROM `table` WHERE foo = ?"; $result = $con->prepare($sql); $result->execute([$bar]); $number_of_rows = $result->fetchColumn();
Walau bagaimanapun, jika kedua-dua kiraan baris dan data yang diambil diperlukan, PDO menyediakan PDOStatement::rowCount() untuk pertanyaan buffer.
Adalah penting untuk ambil perhatian bahawa rowCount() mungkin tidak boleh dipercayai pada semua pemandu. Untuk pangkalan data bukan MySQL, adalah disyorkan untuk menggunakan pertanyaan seperti SELECT COUNT(*) FROM table dan mendapatkan semula nilai menggunakan PDO::query()->fetchColumn().
Pilihan lain ialah mengambil semua baris ke dalam tatasusunan menggunakan PDO::fetchAll() dan kemudian gunakan count() untuk menentukan bilangan baris.
Untuk pertanyaan tanpa pembolehubah, fungsi query() boleh digunakan dan bukannya pendekatan pernyataan yang disediakan:
$nRows = $pdo->query('select count(*) from blah')->fetchColumn(); echo $nRows;
Dengan memilih kaedah yang sesuai berdasarkan keperluan khusus, pembangun boleh memperoleh kiraan baris dengan cekap sambil memaksimumkan prestasi dalam aplikasi PHP mereka.
Atas ialah kandungan terperinci Bagaimana untuk Cekap Menentukan Kiraan Baris dalam PHP dengan PDO?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!