PHP では、多次元配列は非常に一般的なデータ構造です。 4次元配列もその一種で、3次元配列をさらに1層入れ子にしたものとみなすことができます。 4 次元配列を扱う場合、場合によってはそこから特定の値を取得する必要がある場合があります。4 次元配列から値を取得する方法を見てみましょう。
まず第一に、4 次元配列の基本構造を理解する必要があります。 4 次元配列は、複数の 3 次元配列から構成される配列とみなすことができます。それぞれの 3 次元配列は、複数の 2 次元配列から構成される配列とみなすことができます (以下同様)。最後の配列は、複数の単一要素から構成される配列です。
次に、4 次元配列から値を取得する方法を示す例を示します。
以下に示すように、学校、クラス、学生、学年の 4 つのレベルで情報を格納する 4 次元配列 $arr があるとします。
$arr = [ "school1" => [ "class1" => [ "stu1" => ["score" => 85], "stu2" => ["score" => 78], "stu3" => ["score" => 92], ], "class2" => [ "stu1" => ["score" => 88], "stu2" => ["score" => 90], "stu3" => ["score" => 82], ], ], "school2" => [ "class1" => [ "stu1" => ["score" => 95], "stu2" => ["score" => 91], "stu3" => ["score" => 87], ], "class2" => [ "stu1" => ["score" => 85], "stu2" => ["score" => 90], "stu3" => ["score" => 93], ], ], ];
次に、それを取り出す必要があります。 $arr より 学校 1、クラス 2、および生徒 3 の結果。実際には非常に簡単で、多次元配列の value メソッドに従って層ごとにアクセスするだけです。具体的なコードは以下の通りです。
$score = $arr["school1"]["class2"]["stu3"]["score"]; echo $score; // 输出:82
以上がPHPの4次元配列から値を取得する基本的な方法です。なお、値を取得する際は、対応する各レベルのキー名が存在することを確認してください。存在しない場合、「インデックスが未定義」などのエラーが発生します。これを回避するには、値を取得する前に isset() 関数や array_key_exists() 関数を使用して判定することを推奨します。
さらに、for ループまたは foreach ループを使用して、4 次元配列内のすべての値を走査して取り出すこともできます。コードは次のとおりです。
// 使用 for 循环遍历四维数组 for ($i = 0; $i < count($arr); $i++) { $schools = $arr[$i]; foreach ($schools as $classes) { foreach ($classes as $students) { foreach ($students as $scores) { echo $scores["score"] . "<br>"; } } } } // 使用 foreach 循环遍历四维数组 foreach ($arr as $schools) { foreach ($schools as $classes) { foreach ($classes as $students) { foreach ($students as $scores) { echo $scores["score"] . "<br>"; } } } }
上記は、PHP で 4 次元配列から値を取得する基本的な方法です。多次元配列の値演算はプログラムのパフォーマンスに一定の影響を与えるため、使用する場合は最適化に注意する必要があることに注意してください。
以上がPHPで4次元配列の値を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。