ホームページ  >  記事  >  バックエンド開発  >  「未定義メソッド mysqli_result::fetch_all() への呼び出し」が発生するのはなぜですか?

「未定義メソッド mysqli_result::fetch_all() への呼び出し」が発生するのはなぜですか?

DDD
DDDオリジナル
2024-11-03 14:53:021014ブラウズ

Why am I getting

mysqli fetch_all() 関数エラー: 未定義のメソッド

エラー メッセージ「致命的エラー: 未定義のメソッド mysqli_result::fetch_all() の呼び出し」 in" は、使用されている PHP のバージョンで fetch_all() メソッドがサポートされていないことを示します。

互換性の問題

fetch_all() 関数は PHP 5.3 で導入されました。 .0 であるため、それより前のバージョンではアクセスできません。この場合、ユーザーは fetch_all() の導入より前の PHP 5.2.17 を使用しています。

代替メソッド

回避策として、ユーザーは次の方法を使用できます。クエリ結果から行を取得する while ループを備えた fetch_assoc() メソッド。構文は次のとおりです。

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

次のコード スニペットは、while ループで fetch_assoc() を使用する方法を示しています。

<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>

以上が「未定義メソッド mysqli_result::fetch_all() への呼び出し」が発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。