今回は「2次元配列」について書きたいと思います。
2次元配列は概念を理解するのに少し時間が掛かるかもしれませんが、
まずはイメージで捉えてみましょう。
2次元配列とは、配列の1つの要素が、また配列になっているもので、
タンスの引き出しの中に小さなタンスが入っているマトリョーシカ状態
だと思って下さい。
タンスの中にさらにタンスというイメージがわかりづらければ、
上図のように表形式と思ってもらっても正解です。
この場合、タンスで言う1段目が表形式で言う1行目にあたり、
1行目の中にある複数の列が内側のタンスということになります。
タンスで捉えてもらっても、表形式で捉えてもらってもご自身のわかりやすい方で
覚えてもらえればと思います。
では、2次元配列のサンプルプログラムを見てみましょう。
<?php $food = array(); //食べ物を保存する配列変数 $fruit = array("Apple","Orange"); //フルーツのデータを格納 $meat = array("Pork","Beaf"); //お肉のデータを格納 array_push($food,$fruit) ; //foodの1段目にフルーツの配列を格納 array_push($food,$meat) ; //foodの1段目にお肉の配列を格納 print_r($food);
このサンプルプログラムの場合、$foodが2次元配列となっています。
実行結果を見てみると、かなりわかりづらいですが、
先頭の Array ( [0] => Array の部分は
foodというのは配列で、0番目の要素も配列のようです
ということを表しています。
従って、
先頭の、Array ( [0] => Array ( [0] => Apple [1] => Orange ) は
foodというのは配列で、0番目の要素も配列で、その配列の0番目の要素はApple,
1番目の要素はOrangeです、ということになります。
同様に
[1] => Array ( [0] => Pork [1] => Beaf )
の部分はfoodという配列の1番目の要素も配列で、その配列の0番目の要素はPork,
1番目の要素はBeafです、ということになります。
もう一度復習しておきましょう。
このようなサンプルプログラムがあった場合、
上図のように読み解きます。
2次元配列はかなりわかりづらい概念だと思いますが、
よく使うのでぜひ覚えておきましょう。