Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapakah ralat \"mysqli_fetch_all() Bukan Fungsi Sah\" Berlaku dalam PHP?

Mengapakah ralat \"mysqli_fetch_all() Bukan Fungsi Sah\" Berlaku dalam PHP?

DDD
DDDasal
2024-11-02 08:26:29142semak imbas

Why is

Mengendalikan "mysqli_fetch_all() Bukan Fungsi Sah" Ralat dalam PHP

Jika anda menghadapi ralat yang menunjukkan bahawa mysqli_fetch_all() bukan fungsi yang sah, ia mungkin disebabkan versi PHP anda sudah lapuk. mysqli_fetch_all() telah diperkenalkan dalam PHP 5.3.0, jadi versi 5.2.17 dan lebih awal tidak akan menyokong fungsi ini.

Penyelesaian:

Seperti yang dicadangkan oleh penyelesaian masalah anda sebelum ini , penyelesaiannya ialah menggunakan mysqli_fetch_assoc() dengan gelung sementara. Coretan kod berikut menunjukkan cara untuk mendapatkan semula baris satu demi satu menggunakan mysqli_fetch_assoc():

while ($row = $result->fetch_assoc()) {
    // Process the associative array containing a single row
}

Gelung ini akan terus berulang melalui set hasil, memperuntukkan setiap baris kepada pembolehubah $row sebagai tatasusunan bersekutu.

Penukaran Tatasusunan Tersuai:

Sebagai alternatif, jika anda lebih suka mencipta tatasusunan bersekutu anda sendiri, anda boleh menggunakan pendekatan berikut:

$result_array = array();
while ($row = $result->fetch_row()) {
    $result_array[] = array_combine($fields, $row);
}

Ini coretan kod mendapatkan semula baris menggunakan mysqli_fetch_row(), yang mengembalikan tatasusunan yang diindeks secara berangka. Fungsi array_combine() mengaitkan nama medan (diambil daripada $result->fetch_table_columns()) dengan nilai yang sepadan dalam $row, dengan berkesan mencipta tatasusunan bersekutu untuk setiap baris.

Atas ialah kandungan terperinci Mengapakah ralat \"mysqli_fetch_all() Bukan Fungsi Sah\" Berlaku dalam PHP?. 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