Rumah > Artikel > pembangunan bahagian belakang > Mengapa saya mendapat \"Panggilan ke kaedah yang tidak ditentukan mysqli_result::fetch_all()\"?
mysqli fetch_all() Ralat Fungsi: Kaedah Tidak Ditakrifkan
Mesej ralat "Ralat maut: Panggilan ke kaedah yang tidak ditentukan mysqli_result::fetch_all() in" menunjukkan bahawa kaedah fetch_all() tidak disokong dalam versi PHP yang digunakan.
Isu Keserasian
Fungsi fetch_all() telah diperkenalkan dalam PHP 5.3 .0, jadi versi sebelum itu tidak akan mempunyai akses kepadanya. Dalam kes ini, pengguna menggunakan PHP 5.2.17, yang mendahului pengenalan fetch_all().
Kaedah Alternatif
Sebagai penyelesaian, pengguna boleh menggunakan kaedah fetch_assoc() dengan gelung sementara untuk mendapatkan semula baris daripada hasil pertanyaan. Sintaksnya adalah seperti berikut:
<code class="php">while ($row = $result->fetch_assoc()) { // Do something with the row data. }</code>
Contoh
Coretan kod berikut menunjukkan cara menggunakan fetch_assoc() dengan gelung sementara:
<code class="php">$mysqli = new mysqli($host, $username, $password, $database); $query = "LONG QUERY that works, tested in PHPMyAdmin"; $result = $mysqli->query($query); while ($row = $result->fetch_assoc()) { print_r($row); } $mysqli->close();</code>
Atas ialah kandungan terperinci Mengapa saya mendapat \"Panggilan ke kaedah yang tidak ditentukan mysqli_result::fetch_all()\"?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!