PHP: 配列に要素を追加する(先頭・末尾・途中)(
PHPで配列に要素を追加する場合の記述方法を説明します。
先頭に追加
配列の先頭に要素を追加する場合は array_unshift()関数を使います。
書式
int array_unshift(配列, 値1, ... )
戻り値は追加後の配列の要素数です。
追加する値は複数指定することができます。
追加すると配列のインデックス(添字)は0からの連番で振りなおされます。
$arr = [10, 20, 30];
// 先頭に追加
array_unshift($arr, 100);
print_r($arr);
// 実行結果
Array
(
[0] => 100
[1] => 10
[2] => 20
[3] => 30
末尾に追加
配列の末尾に要素を追加する場合は、array_push()関数か、
「$配列名[]」を使います。
どちらの方法でも末尾に追加できますが、
速度が速いのは「$配列名[]」の方です。
array_push()
int array_push(配列, 値1, ...)
array_push()を使った追加例です。
$arr = [10, 20, 30];
// 末尾に追加
array_push($arr, 200);
print_r($arr);
// 実行結果
Array
(
[0] => 10
[1] => 20
[2] => 30
[3] => 200
)
$配列名[]
$配列名[] = 値;
「$配列名[]」を使った追加例です。
$arr = [10, 20, 30];
// 末尾に追加
$arr[] = 200;
print_r($arr);
// 実行結果
Array
(
[0] => 10
[1] => 20
[2] => 30
[3] => 200
)
途中に追加
配列の途中に要素を追加する場合は、 array_splice()関数を使います。
書式
array_splice(配列, 追加位置, 0, 値);
追加の場合、第3引数に必ず「0」を指定します。 第4引数の値を配列で指定した場合は、一度に複数の値を追加できます。
追加すると配列のインデックス(添字)は0からの連番で振りなおされます。
下は array_splice()関数を使ったコード例です。
$arr = [10, 20, 30];
array_splice($arr, 1, 0, 50);
print_r($arr);
// 実行結果
Array
(
[0] => 10
[1] => 50
[2] => 20
[3] => 30
)