UPDATE:2018年06月30日
PHP 多次元配列 を作成する
PHP 多次元配列の配列の宣言(作成)
インデックス配列の「キー」は 0 から付与される整数値です。連想配列の「キー」は任意の文字列です。
インデックス配列と連想配列の違いは「キー」が整数値か文字列かの違いだけです。PHPの内部ではすべての配列を連想配列として管理しています。
・$配列変数名 = array();
書式 array()
・$配列変数名 = array(入力値);
インデックス配列
・$配列変数名 = array('値1', '値2',,,);
・$配列変数名[] = 値1;$配列変数名[] = 値2;
連想配列
・$配列変数名 = array('キー名1' => '値1', 'キー名2' => '値2',,,);
・$配列変数名['キー名1'] = 値1;$配列変数名['キー名2'] = 値2;
インデックス配列の多次元配列をarray()で作成
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | <!-- サンプルコード --> <?php $aks = array();//初期化 //array()を入れ子にして多次元配列を作成 //各要素は「,(カンマ)」で区切ります。キーを指定しないで値だけ並べて指定した場合、自動で数値キーのインデックスが割り振られます。 $aks = array ( array('あ', 'い', 'う', 'え' ,'お'), array('か', 'き', 'く', 'け' ,'こ'), array('さ', 'し', 'す', 'せ' ,'そ') ); //キー名を直接指定して出力 echo $aks[0][0].'<br>'; echo $aks[0][1].'<br>'; echo $aks[1][0].'<br>'; echo $aks[1][1].'<br>'; echo $aks[2][0].'<br>'; echo $aks[2][1].'<br>'; //foreach文で配列を展開 foreach($aks as $array){ echo "--------------------<br>\n"; foreach($array as $key => $value){ echo "key:{$key} value:{$value}<br>\n"; } } ?> |
い
か
き
さ
し
——————–
key:0 value:あ
key:1 value:い
key:2 value:う
key:3 value:え
key:4 value:お
——————–
key:0 value:か
key:1 value:き
key:2 value:く
key:3 value:け
key:4 value:こ
——————–
key:0 value:さ
key:1 value:し
key:2 value:す
key:3 value:せ
key:4 value:そ
インデックス配列の多次元配列を[]で作成
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | <!-- サンプルコード --> <?php $aks = array();//初期化 //[ ]を連ねて多次元配列を作成。インデックス配列 「キー名(インデックス)」は数値 $aks[0][0] = 'あ'; $aks[0][1] = 'い'; $aks[0][2] = 'う'; $aks[0][3] = 'え'; $aks[0][4] = 'お'; $aks[1][0] = 'か'; $aks[1][1] = 'き'; $aks[1][2] = 'く'; $aks[1][3] = 'け'; $aks[1][4] = 'こ'; $aks[2][0] = 'さ'; $aks[2][1] = 'し'; $aks[2][2] = 'す'; $aks[2][3] = 'せ'; $aks[2][4] = 'そ'; //キー名を直接指定して出力 echo $aks[0][0].'<br>'; echo $aks[0][1].'<br>'; echo $aks[1][0].'<br>'; echo $aks[1][1].'<br>'; echo $aks[2][0].'<br>'; echo $aks[2][1].'<br>'; //foreach文で配列を展開 foreach($aks as $array){ echo "--------------------<br>\n"; foreach($array as $key => $value){ echo "key:{$key} value:{$value}<br>\n"; } } ?> |
い
か
き
さ
し
——————–
key:0 value:あ
key:1 value:い
key:2 value:う
key:3 value:え
key:4 value:お
——————–
key:0 value:か
key:1 value:き
key:2 value:く
key:3 value:け
key:4 value:こ
——————–
key:0 value:さ
key:1 value:し
key:2 value:す
key:3 value:せ
key:4 value:そ
連想配列の多次元配列をarray()で作成
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | <!-- サンプルコード --> <?php $aks = array();//初期化 //array()を入れ子にして多次元配列を作成 //各要素は「,(カンマ)」で区切ります。キーを文字列で指定すると連想配列となります。 $aks = array ( 'line1' => array('a1' => 'あ', 'a2' => 'い', 'a3' => 'う', 'a4' => 'え', 'a5' => 'お'), 'line2' => array('k1' => 'か', 'k2' => 'き', 'k3' => 'く', 'k4' => 'け', 'k5' => 'こ'), 'line3' => array('s1' => 'さ', 's2' => 'し', 's3' => 'す', 's4' => 'せ', 's5' => 'そ') ); //キー名を直接指定して出力 echo $aks['line1']['a1'].'<br>'; echo $aks['line1']['a2'].'<br>'; echo $aks['line2']['k1'].'<br>'; echo $aks['line2']['k2'].'<br>'; echo $aks['line3']['s1'].'<br>'; echo $aks['line3']['s2'].'<br>'; //foreach文で配列を展開 foreach($aks as $array){ echo "--------------------<br>\n"; foreach($array as $key => $value){ echo "key:{$key} value:{$value}<br>\n"; } } ?> |
い
か
き
さ
し
——————–
key:a1 value:あ
key:a2 value:い
key:a3 value:う
key:a4 value:え
key:a5 value:お
——————–
key:k1 value:か
key:k2 value:き
key:k3 value:く
key:k4 value:け
key:k5 value:こ
——————–
key:s1 value:さ
key:s2 value:し
key:s3 value:す
key:s4 value:せ
key:s5 value:そ
連想配列の多次元配列を[]で作成
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | <!-- サンプルコード --> <?php $aks = array();//初期化 //[]を連ねて多次元配列を作成。インデックス配列 「キー名(インデックス)」は数値 $aks['line1']['a1'] = 'あ'; $aks['line1']['a2'] = 'い'; $aks['line1']['a3'] = 'う'; $aks['line1']['a4'] = 'え'; $aks['line1']['a5'] = 'お'; $aks['line2']['k1'] = 'か'; $aks['line2']['k2'] = 'き'; $aks['line2']['k3'] = 'く'; $aks['line2']['k4'] = 'け'; $aks['line2']['k5'] = 'こ'; $aks['line3']['s1'] = 'さ'; $aks['line3']['s2'] = 'し'; $aks['line3']['s3'] = 'す'; $aks['line3']['s4'] = 'せ'; $aks['line3']['s5'] = 'そ'; //キー名を直接指定して出力 echo $aks['line1']['a1'].'<br>'; echo $aks['line1']['a2'].'<br>'; echo $aks['line2']['k1'].'<br>'; echo $aks['line2']['k2'].'<br>'; echo $aks['line3']['s1'].'<br>'; echo $aks['line3']['s2'].'<br>'; //foreach文で配列を展開 foreach($aks as $array){ echo "--------------------<br>\n"; foreach($array as $key => $value){ echo "key:{$key} value:{$value}<br>\n"; } } ?> |
い
か
き
さ
し
——————–
key:a1 value:あ
key:a2 value:い
key:a3 value:う
key:a4 value:え
key:a5 value:お
——————–
key:k1 value:か
key:k2 value:き
key:k3 value:く
key:k4 value:け
key:k5 value:こ
——————–
key:s1 value:さ
key:s2 value:し
key:s3 value:す
key:s4 value:せ
key:s5 value:そ
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 | <h3>インデックス配列の多次元配列をarray()で作成</h3> <?php $aks = array();//初期化 //array()を入れ子にして多次元配列を作成 //各要素は「,(カンマ)」で区切ります。キーを指定しないで値だけ並べて指定した場合、自動で数値キーのインデックスが割り振られます。 $aks = array ( array('あ', 'い', 'う', 'え' ,'お'), array('か', 'き', 'く', 'け' ,'こ'), array('さ', 'し', 'す', 'せ' ,'そ') ); //キー名を直接指定して出力 echo $aks[0][0].'<br>'; echo $aks[0][1].'<br>'; echo $aks[1][0].'<br>'; echo $aks[1][1].'<br>'; echo $aks[2][0].'<br>'; echo $aks[2][1].'<br>'; //foreach文で配列を展開 foreach($aks as $array){ echo "--------------------<br>\n"; foreach($array as $key => $value){ echo "key:{$key} value:{$value}<br>\n"; } } ?> <h3>インデックス配列の多次元配列を[]で作成</h3> <?php $aks = array();//初期化 //[ ]を連ねて多次元配列を作成。インデックス配列 「キー名(インデックス)」は数値 $aks[0][0] = 'あ'; $aks[0][1] = 'い'; $aks[0][2] = 'う'; $aks[0][3] = 'え'; $aks[0][4] = 'お'; $aks[1][0] = 'か'; $aks[1][1] = 'き'; $aks[1][2] = 'く'; $aks[1][3] = 'け'; $aks[1][4] = 'こ'; $aks[2][0] = 'さ'; $aks[2][1] = 'し'; $aks[2][2] = 'す'; $aks[2][3] = 'せ'; $aks[2][4] = 'そ'; //キー名を直接指定して出力 echo $aks[0][0].'<br>'; echo $aks[0][1].'<br>'; echo $aks[1][0].'<br>'; echo $aks[1][1].'<br>'; echo $aks[2][0].'<br>'; echo $aks[2][1].'<br>'; //foreach文で配列を展開 foreach($aks as $array){ echo "--------------------<br>\n"; foreach($array as $key => $value){ echo "key:{$key} value:{$value}<br>\n"; } } ?> <h3>連想配列の多次元配列をarray()で作成</h3> <?php $aks = array();//初期化 //array()を入れ子にして多次元配列を作成 //各要素は「,(カンマ)」で区切ります。キーを文字列で指定すると連想配列となります。 $aks = array ( 'line1' => array('a1' => 'あ', 'a2' => 'い', 'a3' => 'う', 'a4' => 'え', 'a5' => 'お'), 'line2' => array('k1' => 'か', 'k2' => 'き', 'k3' => 'く', 'k4' => 'け', 'k5' => 'こ'), 'line3' => array('s1' => 'さ', 's2' => 'し', 's3' => 'す', 's4' => 'せ', 's5' => 'そ') ); //キー名を直接指定して出力 echo $aks['line1']['a1'].'<br>'; echo $aks['line1']['a2'].'<br>'; echo $aks['line2']['k1'].'<br>'; echo $aks['line2']['k2'].'<br>'; echo $aks['line3']['s1'].'<br>'; echo $aks['line3']['s2'].'<br>'; //foreach文で配列を展開 foreach($aks as $array){ echo "--------------------<br>\n"; foreach($array as $key => $value){ echo "key:{$key} value:{$value}<br>\n"; } } ?> <h3>連想配列の多次元配列を[]で作成</h3> <?php $aks = array();//初期化 //[]を連ねて多次元配列を作成。インデックス配列 「キー名(インデックス)」は数値 $aks['line1']['a1'] = 'あ'; $aks['line1']['a2'] = 'い'; $aks['line1']['a3'] = 'う'; $aks['line1']['a4'] = 'え'; $aks['line1']['a5'] = 'お'; $aks['line2']['k1'] = 'か'; $aks['line2']['k2'] = 'き'; $aks['line2']['k3'] = 'く'; $aks['line2']['k4'] = 'け'; $aks['line2']['k5'] = 'こ'; $aks['line3']['s1'] = 'さ'; $aks['line3']['s2'] = 'し'; $aks['line3']['s3'] = 'す'; $aks['line3']['s4'] = 'せ'; $aks['line3']['s5'] = 'そ'; //キー名を直接指定して出力 echo $aks['line1']['a1'].'<br>'; echo $aks['line1']['a2'].'<br>'; echo $aks['line2']['k1'].'<br>'; echo $aks['line2']['k2'].'<br>'; echo $aks['line3']['s1'].'<br>'; echo $aks['line3']['s2'].'<br>'; //foreach文で配列を展開 foreach($aks as $array){ echo "--------------------<br>\n"; foreach($array as $key => $value){ echo "key:{$key} value:{$value}<br>\n"; } } ?> |
タグ(=記事関連ワード)
日付
最終更新日:2018年06月30日