ホームページ > バックエンド開発 > PHPチュートリアル > MySQLi クエリが 2 行を期待しているのに 1 行しか返さないのはなぜですか?

MySQLi クエリが 2 行を期待しているのに 1 行しか返さないのはなぜですか?

Susan Sarandon
リリース: 2024-11-17 07:14:03
オリジナル
345 人が閲覧しました

Why Does My MySQLi Query Only Return One Row When I Expect Two?

MySQLi Query Fetching Single Row

このコード スニペットは、MySQL テーブルから 2 行のデータを取得することを目的としていますが、1 行だけを返します。 phpMyAdmin の SQL ステートメントは両方の行を正常に返しますが、問題のコードはこれに失敗します。

$request_list_result = $mysqli->query("
SELECT buddy_requester_id, buddy_reciepient_id, user_id, user_fullname FROM sb_buddies
JOIN sb_users ON buddy_requester_id=user_id
WHERE buddy_status='0' AND buddy_reciepient_id='" . get_uid() . "'");

$request_list_row = $request_list_result->fetch_array();

echo $request_list['user_fullname'];
ログイン後にコピー

問題は、単一行のみを配列として取得する fetch_array の使用にあります。結果からすべての行をフェッチするには、目的の関数は fetch_all です。

$request_list = $request_list_result->fetch_all();
ログイン後にコピー

この関数は配列の配列を返します。ここで、各内部配列は結果セット内の行を表します。 fetch_all を使用すると、コードが両方の行に正しくアクセスできるようになります。

参考までに、fetch_all のドキュメントは http://php.net/manual/en/mysqli-result.fetch-all にあります。 php

以上がMySQLi クエリが 2 行を期待しているのに 1 行しか返さないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート