配列の結合する
配列を結合したい場合の処理です。
メモの代わりに、、、
配列の場合
以下のような配列があります。
-例文-
$array1 = ["apple","banana","orange"];
$array2 = ["berry","pineapple","mango"];
print_r($array1);
print_r($array2);
-結果-
Array
(
[0] => apple
[1] => banana
[2] => orange
)
Array
(
[0] => berry
[1] => pineapple
[2] => mango
)
二つの配列を結合したい場合、
以下のように記述します。
-例文-
print_r(array_merge($array1, $array2));
-結果-
Array
(
[0] => apple
[1] => banana
[2] => orange
[3] => berry
[4] => pineapple
[5] => mango
)
連想配列の場合
-例文-
$array1 = [
"name"=>"apple",
"price"=>"200",
"color"=>"red"
];
$array2 = [
"name"=>"banana",
"price"=>"200",
"from"=>"US"
];
print_r(array_merge($array1, $array2));
-結果-
Array
(
[name] => banana
[price] => 200
[color] => red
[from] => US
)
キーが同じ場合だと上書きされますが、異なるキーであれば上書きはされません。
array_push
追加する内容に配列を指定すると、その配列自体が1つの要素として加わります。
-例文-
$array1 = ["apple","banana","orange"];
$array2 = ["berry","pineapple","mango"];
array_push($array1, $array2);
print_r($array1);
-結果-
Array
(
[0] => apple
[1] => banana
[2] => orange
[3] => Array
(
[0] => berry
[1] => pineapple
[2] => mango
)
)
配列ではなく要素を指定すれば、そのまま追加されます。
-例文-
$array1 = ["apple","banana","orange"];
array_push($array1,"berry");
print_r($array1);
-結果-
Array
(
[0] => apple
[1] => banana
[2] => orange
[3] => berry
)