ホームページ >バックエンド開発 >PHPの問題 >PHPでレコードセットを配列に変換する方法(3つの方法)

PHPでレコードセットを配列に変換する方法(3つの方法)

PHPz
PHPzオリジナル
2023-04-19 10:05:56838ブラウズ

PHP のレコード セットは、データベース クエリ操作によって取得される結果セットを指し、通常はデータ テーブル内のデータを取得するために使用されます。レコードセットを使用する場合、データ処理を容易にするためにレコードセットを配列形式に変換する必要があることがよくあります。

以下に、PHP でレコードセットを配列に変換するいくつかの方法を示します。

方法 1: mysqli_fetch_all() 関数を使用する

mysqli_fetch_all() は PHP の組み込み関数であり、結果セットからデータのすべての行を取得し、2 次元のデータを返すために使用されます。配列。

サンプル コード:

$query = "SELECT * FROM mytable";
$result = mysqli_query($conn, $query);
$data = mysqli_fetch_all($result, MYSQLI_ASSOC);
print_r($data);

上記のコードでは、$conn はデータベースへの接続時に返される接続ハンドル、$query はクエリ ステートメント、$result はクエリ結果セットです。 $data は配列を取得したいものです。

方法 2: while ループを使用し、配列を使用して追加

while ループで結果セットを行ごとに配列に追加できます。各加算演算は配列の最後で実行されるため、生成される配列も 2 次元配列になります。

サンプルコード:

$query = "SELECT * FROM mytable";
$result = mysqli_query($conn, $query);
$data = array();
while ($row = mysqli_fetch_assoc($result)) {
    $data[] = $row;
}
print_r($data);

上記のコードでは、$row が各行のデータであり、$row は毎回 $data 配列に追加されます。

方法 3: PDOStatement::fetchAll() 関数を使用する

PDOException::fetchAll() は、PHP PDO によって拡張された関数であり、結果セットからすべてのデータ レコードを取得し、結果セットを返すために使用されます。配列。

サンプル コード:

$query = "SELECT * FROM mytable";
$result = $pdo->query($query);
$data = $result->fetchAll(PDO::FETCH_ASSOC);
print_r($data);

上記のコードでは、$pdo は PDO とデータベースを通じて作成された PDO オブジェクト、$query はクエリ ステートメント、$result はクエリの結果セットです。 、 $data は取得する配列です。

概要

上記では、PHP でレコードセットを配列に変換する 3 つの方法を紹介しています。mysqli_fetch_all() 関数と PDOStatement::fetchAll() 関数は PHP の組み込み関数ですが、while ループは達成されます。手動で繰り返します。これら 3 つの方法にはそれぞれ長所と短所があるため、ニーズや具体的なシナリオに応じて適切な方法を選択してください。

以上がPHPでレコードセットを配列に変換する方法(3つの方法)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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