Mencari Alternatif untuk mysql_num_rows dengan PDO
Dalam usaha untuk mengalihkan fail PHP untuk menggunakan PDO, pembangun mungkin menghadapi dilema mengenai alternatif kepada fungsi mysql_num_rows yang tidak digunakan lagi. Pada asalnya, menggunakan mysql_num_rows, adalah mungkin untuk mengira baris yang dikembalikan daripada pertanyaan MySQL dan melakukan tindakan bersyarat.
PDO Equivalent for Counting Rows
PDO equivalent for counting rows adalah untuk menggunakan kaedah fetchColumn(). Kaedah ini boleh digunakan bersama dengan pernyataan query() atau prepare() dan execute().
Menggunakan query() dan fetchColumn()
<code class="php">$res = $DB->query('SELECT COUNT(*) FROM table'); $num_rows = $res->fetchColumn();</code>
Menggunakan prepare(), execute(), dan fetchColumn()
<code class="php">$res = $DB->prepare('SELECT COUNT(*) FROM table'); $res->execute(); $num_rows = $res->fetchColumn();</code>
Pernyataan Bersyarat dengan fetchColumn()
FetchColumn( ) kaedah juga boleh digunakan untuk menentukan secara bersyarat sama ada data wujud atau telah dipilih:
<code class="php">$res = $DB->query('SELECT COUNT(*) FROM table'); $data_exists = ($res->fetchColumn() > 0) ? true : false;</code>
Menggabungkan Pembolehubah Bersyarat
Dengan memasukkan pembolehubah, anda boleh menetapkan secara langsung hasil semakan kiraan baris:
<code class="php">$res = $DB->query('SELECT COUNT(*) FROM table'); $message = ($res->fetchColumn() > 0) ? array('status' => 'ok') : array('status' => 'error');</code>
Dengan menggunakan kaedah PDO fetchColumn(), pembangun boleh menggantikan fungsi mysql_num_rows dengan berkesan dalam skrip PHP mereka apabila beralih kepada PDO untuk operasi pangkalan data. Ini memastikan keserasian dengan persekitaran PHP moden dan amalan terbaik untuk interaksi pangkalan data.
Atas ialah kandungan terperinci Bagaimana Menggunakan PDO untuk Mengira Baris dan Mengganti mysql_num_rows?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!