PDO, sambungan PHP yang berkuasa untuk interaksi pangkalan data, menyediakan mekanisme yang cekap dan selamat untuk mengendalikan pertanyaan pangkalan data. Walau bagaimanapun, tidak seperti pembolehubah num_rows MySQLi, PDO tidak mempunyai kaedah langsung untuk menentukan bilangan baris yang dikembalikan oleh pertanyaan SELECT.
Walaupun terdapat PDOStatement->rowCount kaedah, penggunaannya untuk pertanyaan SELECT tidak digalakkan mengikut dokumentasi PDO. Sebaliknya, pendekatan yang disyorkan ialah mengeluarkan pernyataan SELECT COUNT(*) yang berasingan menggunakan kriteria yang sama seperti pertanyaan SELECT yang anda inginkan.
Untuk mengira bilangan baris yang akan dikembalikan oleh pertanyaan PILIH, anda boleh menggunakan yang berikut langkah:
Jika anda sudah mempunyai set rekod, anda boleh menggunakan count() berfungsi untuk menentukan bilangan baris di dalamnya. Walau bagaimanapun, ini memerlukan pengambilan data menggunakan salah satu kaedah fetch*, seperti fetch() atau fetchAll().
Berikut ialah contoh yang menunjukkan pendekatan yang disyorkan:
$stmt = $pdo->prepare("SELECT * FROM `table` WHERE `condition` = ?"); $stmt->execute([$value]); $rowCount = $stmt->rowCount(); // This will return 0 for a SELECT query $countStmt = $pdo->prepare("SELECT COUNT(*) FROM `table` WHERE `condition` = ?"); $countStmt->execute([$value]); $count = $countStmt->fetchColumn(); // This will return the actual count echo "Number of rows: $count";
Dengan mengikuti pendekatan ini, anda boleh mengira dengan tepat bilangan baris yang dikembalikan oleh pertanyaan PDO SELECT, memastikan optimum prestasi dan penggunaan sumber pangkalan data.
Atas ialah kandungan terperinci Bagaimana untuk Mengira Baris dengan Cekap daripada Pertanyaan PDO SELECT dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!