Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa PHP 5.2.17 Melemparkan Ralat \"Panggilan ke kaedah yang tidak ditentukan mysqli_result::fetch_all()\"?

Mengapa PHP 5.2.17 Melemparkan Ralat \"Panggilan ke kaedah yang tidak ditentukan mysqli_result::fetch_all()\"?

Patricia Arquette
Patricia Arquetteasal
2024-11-01 09:06:02248semak imbas

Why Does PHP 5.2.17 Throw an

PHP MySQLi fetch_all() Fungsi: Ralat dan Penyelesaian Masalah

Dalam PHP, sambungan MySQLi menyediakan beberapa fungsi untuk berinteraksi dengan pangkalan data MySQL . Satu fungsi sedemikian ialah fetch_all(), yang mengambil semua baris hasil sebagai tatasusunan bersekutu. Walau bagaimanapun, apabila menggunakan PHP 5.2.17, pembangun mungkin menghadapi ralat: "Panggil ke kaedah yang tidak ditentukan mysqli_result::fetch_all()".

Penjelasan Ralat

Versi PHP 5.2.17 tidak menyokong fungsi fetch_all(). Fungsi ini telah diperkenalkan dalam PHP 5.3.0, jadi ia tidak tersedia dalam versi lama.

Penyelesaian

Untuk menyelesaikan isu ini, anda boleh menggunakan fetch_assoc() berfungsi sebaliknya. Fungsi ini mendapatkan semula satu baris daripada hasil sebagai tatasusunan bersekutu. Anda boleh menggelungkan hasil menggunakan gelung while untuk mendapatkan semua baris:

<code class="php">while ($row = $result->fetch_assoc()) {
    // Do what you need with the row.
}</code>

Kaedah Alternatif

Jika anda perlu mendapatkan semua baris dalam satu tatasusunan bersekutu, anda boleh menggunakan penyelesaian berikut:

<code class="php">$rows = [];
while ($row = $result->fetch_assoc()) {
    $rows[] = $row;
}</code>

Kod ini bergelung melalui hasil dan menambah setiap baris ke tatasusunan $rows. Tatasusunan yang terhasil akan mengandungi semua baris daripada hasilnya.

Kesimpulan

Ingat untuk menyemak keserasian fungsi PHP dengan versi PHP khusus anda. Jika fungsi tidak tersedia, mungkin terdapat kaedah alternatif atau penyelesaian untuk mencapai kefungsian yang diingini.

Atas ialah kandungan terperinci Mengapa PHP 5.2.17 Melemparkan Ralat \"Panggilan ke kaedah yang tidak ditentukan mysqli_result::fetch_all()\"?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn