PHP では、データベースへのクエリは非常に一般的なタスクの 1 つです。クエリの結果には複数の行と列のデータが含まれる場合がありますが、このとき、後続の処理を容易にするためにクエリ結果を配列に処理する必要があります。
この記事では、クエリ結果を配列形式で返すいくつかの方法を紹介します。
fetch_assoc() 関数は MySQLi クラスの関数で、リソース オブジェクトからクエリ結果を抽出し、それらを連想配列にマージするために使用されます。連想配列は列名をキーとして使用し、データを値として使用するため、データの処理が容易になります。
次は fetch_assoc() 関数の使用例です:
// 连接MySQL数据库 $con = mysqli_connect("localhost","root","","test"); // 查询 $result_set = mysqli_query($con, "SELECT * FROM products"); // 结果形成数组 while ($row = mysqli_fetch_assoc($result_set)) { $result_array[] = $row; } // 输出数组 print_r($result_array);
fetch_row() 関数は MySQLi の関数でもあります。リソース オブジェクトからクエリ結果を抽出し、それらをインデックス配列にマージするためのクラス。インデックス配列には、データ テーブル内の列番号と値としてのデータによってインデックスが付けられます。
次は、fetch_row() 関数の使用例です:
// 连接MySQL数据库 $con = mysqli_connect("localhost","root","","test"); // 查询 $result_set = mysqli_query($con, "SELECT * FROM products"); // 结果形成数组 while ($row = mysqli_fetch_row($result_set)) { $result_array[] = $row; } // 输出数组 print_r($result_array);
fetch_all() 関数は、MySQLi の新しい関数です。リソース オブジェクトからクエリ結果を抽出し、それらを 2 次元配列にマージします。 2 次元配列には、行番号と列番号が添え字として、データが値として含まれます。
次は、fetch_all() 関数の使用例です。
// 连接MySQL数据库 $con = mysqli_connect("localhost","root","","test"); // 查询 $result_set = mysqli_query($con, "SELECT * FROM products"); // 结果形成数组 $result_array = mysqli_fetch_all($result_set, MYSQLI_ASSOC); // 输出数组 print_r($result_array);
上記は、 fetch_assoc( を使用して、クエリ結果から配列を形成するための 3 つの基本的な方法です) )、fetch_row それぞれ () および fetch_all() 関数。その中でも、 fetch_assoc() 関数は最も便利な処理方法を提供するため、ほとんどの状況に適しています。 fetch_row() 関数と fetch_all() 関数は、主に特定の状況での処理に使用されます。
実際のアプリケーションでは、array_map() および array_column() 関数を使用して配列要素を操作および抽出するなど、実際のニーズに応じて配列を処理することもできます。
以上がPHP がクエリ結果を配列形式で返す方法の簡単な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。