PHP を使用してデータベース クエリを実行する開発者にとって、クエリ結果を配列に変換することは一般的なタスクの 1 つである可能性があります。配列はデータの処理と操作を容易にするために PHP で広く使用されているためです。この記事では、クエリ結果を配列に変換する方法についていくつかの方法を検討します。
1. mysqli_fetch_array 関数を使用する
mysqli_fetch_array 関数は、クエリ結果を配列に変換する便利な方法です。この関数には、クエリ結果オブジェクトと戻り値の型という 2 つのパラメータが必要です。戻り値の型パラメータにはデフォルト値があり、戻り値の型を変更したくない場合は省略できます。基本的な例を次に示します。
$query = "SELECT * FROM my_table"; $result = mysqli_query($conn, $query); while($row = mysqli_fetch_array($result)){ $my_array[] = $row; }
上記のコードでは、最初にクエリを実行し、結果を $result 変数に保存します。次に、while ループを使用して結果セットの各行を反復処理し、mysqli_fetch_array を使用して現在の行を配列に変換し、それを $my_array 配列に追加します。最後に、すべての行が配列に変換されると、その配列を必要な操作に使用できるようになります。
2. mysqli_fetch_assoc 関数を使用する
mysqli_fetch_assoc 関数は、クエリ結果を配列に変換するもう 1 つの方法です。この関数は、現在の行を列名をキーとした連想配列として返します。以下に例を示します。
$query = "SELECT * FROM my_table"; $result = mysqli_query($conn, $query); while($row = mysqli_fetch_assoc($result)){ $my_array[] = $row; }
上記のコードでは、mysqli_fetch_array 関数とは異なり、mysqli_fetch_assoc 関数を使用します。このようにして、連想配列が得られます。残りの手順は方法 1 と同じで、結果は最終的に配列に配置されます。
3. mysqli_fetch_object 関数を使用する
mysqli_fetch_object 関数は、クエリ結果を配列に変換するもう 1 つの方法です。この関数は現在の行をオブジェクトとして返します。オブジェクトのプロパティ名は各フィールドの名前に対応します。以下に例を示します。
$query = "SELECT * FROM my_table"; $result = mysqli_query($conn, $query); while($row = mysqli_fetch_object($result)){ $my_array[] = $row; }
上記のコードでは、最初の 2 つの方法と異なるのは、mysqli_fetch_object 関数を使用していることです。結果を配列ではなくオブジェクトに変換する場合は、この関数を使用できます。オブジェクト内の属性名は各フィールドの名前に対応します。
4. PDOStatement::fetch 関数を使用する
PDO を使用してクエリを実行する場合、PDOStatement::fetch 関数を使用してクエリ結果を配列に変換できます。 mysqli_fetch_array 関数と同様に、この関数には 2 つのパラメータ (戻り値の型とオプションのパラメータ $cursor_orientation) が必要です。基本的な例を次に示します。
$query = "SELECT * FROM my_table"; $pdo_stmt = $pdo->query($query); while($row = $pdo_stmt->fetch(PDO::FETCH_ASSOC)){ $my_array[] = $row; }
上記のコードでは、最初にクエリを実行し、結果を $pdo_stmt 変数に保存します。次に、while ループを使用して結果セットの各行を反復処理し、PDOStatement::fetch 関数を使用して現在の行を連想配列として返し、それを $my_array 配列に追加します。最後に、すべての行が配列に変換されると、その配列を必要な操作に使用できるようになります。
概要
この記事では、クエリ結果を配列に変換する 4 つの方法を検討しました。 mysqli を使用してクエリを実行する場合でも、PDO を使用してクエリを実行する場合でも、どちらの方法も使用できます。特定のニーズに応じて、結果の変換に適切な方法を選択してください。どの方法を選択する場合でも、使用する前に結果セットが空でないことを確認してください。空でない場合、致命的なエラーが発生します。
以上がPHP がクエリ結果を配列に変換する方法を調べるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。