PHP は、Web 開発で広く使用されているサーバー側スクリプト言語です。 PHP では、配列は数値、文字列、オブジェクトなどの複数の値を格納できる重要なデータ型です。場合によっては、特定のビジネス ニーズを満たすために、複数の値を 2 次元配列に結合する必要があります。この記事では、PHP が 2 次元配列を保存する方法を検討し、いくつかの方法とテクニックを紹介します。
1. 2 次元配列の概要
PHP では、2 次元配列は複数の配列を含む配列であり、各配列には複数のキーと値のペア (または要素) が含まれます。たとえば、次のコードは、単純な 2 次元配列を作成する方法を示しています。
$grades = array( array("Tom", 80), array("John", 90), array("Mary", 95) );
上記のコードでは、$grades は 3 つの配列を含む配列であり、各配列には 2 つのキーと値のペアが含まれています。最初の配列にはキーと値のペア ("Tom"、80) が含まれ、2 番目の配列にはキーと値のペア ("John"、90) が含まれ、3 番目の配列にはキーと値のペア ("Mary"、95) が含まれます。 )。
2. 2 次元配列の保存
2 次元配列を保存する必要がある場合は、さまざまな方法とテクニックを使用できます。一般的な例をいくつか示します。
PHP のシリアル化関数 Serialize() を使用して、2 次元配列を文字列に変換し、保存します。ファイルまたはデータベース。必要に応じて、逆シリアル化関数 unserialize() を使用して文字列を 2 次元配列に復元できます。たとえば、次のコードは、2 次元配列 $grades をファイルに保存する方法を示しています。
$serialized_grades = serialize($grades); file_put_contents("grades.txt", $serialized_grades);
上記のコードでは、シリアル化関数 Serialize() を使用して、$grades 配列を文字列に変換します。 $serialized_grades を指定し、関数 file_put_contents() を使用して、文字列をファイル「grades.txt」に保存します。
ファイルを読み取る場合、関数 file_get_contents() を使用してファイル内の文字列を読み取り、逆シリアル化関数 unserialize() を使用して文字列を 2 次元配列に復元できます。たとえば、次のコードは、保存された 2 次元配列をファイルから読み取る方法を示しています。
$serialized_grades = file_get_contents("grades.txt"); $grades = unserialize($serialized_grades);
上記のコードでは、関数 file_get_contents() を使用して、ファイル "grades" 内の文字列 $serialized_grades を読み取ります。 .txt"、そして逆シリアル化関数 unserialize() を使用して文字列を 2 次元配列 $grades に復元します。
PHP の JSON 関数 json_encode() を使用して、2 次元配列を JSON 形式に変換して保存することもできます。ファイルまたはデータベース内。必要に応じて、JSON 関数 json_decode() を使用して、JSON 形式の文字列を 2 次元配列に復元できます。たとえば、次のコードは、2 次元配列 $grades をファイルに保存する方法を示しています。
$json_grades = json_encode($grades); file_put_contents("grades.json", $json_grades);
上記のコードでは、JSON 関数 json_encode() を使用して 2 次元配列 $grades を変換します。 JSON 形式の文字列 $json_grades に変換し、関数 file_put_contents() を使用して文字列をファイル「grades.json」に保存します。
ファイルを読み取る場合、関数 file_get_contents() を使用してファイル内の JSON 形式文字列を読み取り、JSON 関数 json_decode() を使用して JSON 形式文字列を 2 次元配列に復元できます。たとえば、次のコードは、保存された 2 次元配列をファイルから読み取る方法を示しています。
$json_grades = file_get_contents("grades.json"); $grades = json_decode($json_grades, true);
上記のコードでは、関数 file_get_contents() を使用して、ファイル "grades" 内の JSON 形式の文字列を読み取ります。 .json" $ json_grades を実行し、JSON 関数 json_decode() を使用して、JSON 形式の文字列を 2 次元配列 $grades に復元します。
MySQLi や PDO などの PHP データベース拡張機能を使用して、2 次元配列をデータベースに保存できます。たとえば、次のコードは、2 次元配列 $grades を MySQL データベースに保存する方法を示しています。
$servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; $conn = new mysqli($servername, $username, $password, $dbname); // 检查连接是否成功 if ($conn->connect_error) { die("连接失败:" . $conn->connect_error); } // 创建SQL语句 $sql = "INSERT INTO grades (name, score) VALUES (?, ?)"; // 准备SQL语句 $stmt = $conn->prepare($sql); // 绑定参数并执行SQL语句 foreach ($grades as $grade) { $name = $grade[0]; $score = $grade[1]; $stmt->bind_param("si", $name, $score); $stmt->execute(); } $stmt->close(); $conn->close();
上記のコードでは、MySQLi 拡張機能を使用してデータベース接続 $conn を作成し、 2 次元配列を $grades に変換する SQL ステートメント INSERT INTO は、テーブル Grade に保存されます。まず、prepare() 関数を使用して SQL ステートメントを準備し、bind_param() 関数を使用してパラメータをバインドします。次に、foreach ループを使用して 2 次元配列 $grades を走査し、$name と $score をテーブル Grade に挿入します。
保存された 2 次元配列を読み取る必要がある場合は、SQL ステートメントの SELECT 関数とフェッチ関数を使用して、データベースから関連データを読み取ることができます。
3. 概要
PHP では、配列を文字列、JSON 形式、またはデータベースとして保存するなど、さまざまな方法やテクニックを使用して、複数の値の 2 次元配列を保存できます。これらの技術は、さまざまなビジネス ニーズを満たし、プログラムの可読性と保守性を向上させることができます。実際の開発では、ビジネスニーズとパフォーマンス要件に基づいて適切な保存方法を選択し、プログラムの効率と品質を向上させます。
以上がPHPで2次元配列を保存する方法(方法とヒント)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。