PHP 開発では、データベースへのクエリは非常に一般的であり、多くの場合、データベース クエリを通じてデータを取得し、そのデータを処理または表示する必要があります。このとき、通常はクエリ結果を配列に保存し、データを表示または使用するために配列を走査します。
次に、クエリ結果を PHP の配列として保存し、その配列を操作する方法を見てみましょう。
まず、データベースに接続する必要があります。 PHP では、mysqli や PDO などの拡張機能を使用してデータベースに接続できます。ここでは、mysqli を例として、データベースに接続してクエリ結果を取得する方法を示します。
//连接MySQL数据库 $mysqli = new mysqli('localhost', 'root', 'password', 'database_name'); //判断连接是否成功 if ($mysqli->connect_errno) { echo "Failed to connect to MySQL: " . $mysqli->connect_error; exit(); }
$mysqli は接続しているデータベース オブジェクトであり、クエリ操作を実行できます。
mysqli を使用してデータベースにクエリを実行する手順は次のとおりです:
1. SQL ステートメント
$sql = 'SELECT * FROM table_name WHERE ...';
$sql をここに記述します。実行する SQL ステートメント。table_name はクエリ対象のテーブルの名前です。WHERE の後の条件はオプションで、必要に応じて追加できます。
2. SQL ステートメントを実行します
$result = $mysqli->query($sql);
mysqli->query() メソッドを使用して SQL ステートメントを実行し、結果を $result に保存します。
3. $result
$rows = array(); while ($row = $result->fetch_assoc()) { $rows[] = $row; }
からクエリ結果を取得します。ここでは while ループを使用して、$result->fetch_assoc() メソッドを呼び出してクエリ結果を取得し、各行を保存します。 row 配列の $ にあります。
この時点で、クエリ結果を配列として保存しましたので、この配列を操作する方法を見てみましょう。
クエリ結果を配列に保存すると、PHP が提供する配列関数を使用してさまざまな操作を実装でき、非常に便利です。
1. 配列の走査
foreach ($rows as $row) { ... }
ここでは、foreach ループを使用して、配列 $rows 内の各要素 $row を走査します。
2. 配列をフィルターする
PHP が提供する array_filter() 関数を使用して配列をフィルターし、目的の結果を取得します。
$filtered_rows = array_filter($rows, function($row) { return $row['age'] > 18; });
上記のコードは、配列 $rows 内の 18 年より古い要素をすべてフィルターで除外し、結果を配列 $filtered_rows に保存します。
3. 配列のソート
PHP が提供する array_sort() 関数を使用して配列をソートし、目的の結果を取得します。
usort($rows, function($a, $b) { return $a['age'] - $b['age']; });
上記のコードは、配列 $rows 内の各要素の age フィールドに従って昇順に並べ替えます。
4. 配列を変更する
配列の値を直接変更し、PHP が提供する array_map() 関数を使用してバッチ変更を行うことができます。
$rows = array_map(function($row) { $row['name'] = strtoupper($row['name']); return $row; }, $rows);
上記のコードは、$rows 配列の各名前フィールドを大文字に変換し、変更された $row 配列を返します。
クエリ結果を配列に保存することで、データベース データを簡単に操作してさまざまなニーズを満たすことができます。配列を使用する場合は、データ エラーを避けるために、元のデータの構造を破壊しないように注意する必要があります。さらに、他の PHP 関数やライブラリを組み合わせて使用して、複雑な操作やデータ処理を実装することもできます。
以上がPHPでレコードが配列であることをクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。