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 )