ホームページ >バックエンド開発 >PHPチュートリアル >「mysql_fetch_array()」が実際にすべてのクエリ行の配列を返すのはいつですか?

「mysql_fetch_array()」が実際にすべてのクエリ行の配列を返すのはいつですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-20 14:30:29336ブラウズ

When Does 'mysql_fetch_array()' Really Return an Array of All Query Rows?

mysql_fetch_array の問題を理解する

mysql_fetch_array() 関数を使用するときによくある間違いは、関数が関数からすべての行の配列を返すと想定していることです。クエリ。ただし、取得できるのは 1 行だけなので、最初の要素以上にアクセスしようとすると混乱が生じます。

コードの説明

提供されたコードはアーティストを取得しようとします。名前が「a」、「b」、「c」で始まるもの。クエリは $array に保存され、最初の行が $array_result にフェッチされます。ただし、$array_result[1] にアクセスしようとすると、「未定義のオフセット」エラーが発生します。これは、mysql_fetch_array() が最初の行のみを配列として返すためです。

解決策: 行の反復

クエリからすべての行を取得するには、mysql_fetch_array()関数はループ内で複数回呼び出す必要があります。例:

<code class="php">$array = mysql_query("SELECT artist FROM directory WHERE artist LIKE 'a%' OR artist LIKE 'b%' OR artist LIKE 'c%'");

while ($data = mysql_fetch_array($array)) {
  // Output or process each row data as needed
  var_dump($data);
}</code>

この例では、ループはクエリ結果から各行を取得して処理し、各行の要素にアクセスする目的の機能を可能にします。

以上が「mysql_fetch_array()」が実際にすべてのクエリ行の配列を返すのはいつですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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