【PHP】配列の値を変更する方法[追加する、削除する、置換する(要素を入れ替える)]
PHPで配列の値を変更する方法を紹介します。
目次から読む
配列の値を変更する方法
<?php
$fruits = ['apple', 'orange', 'banana'];
$fruits[1] = 'lemon';
var_dump($fruits);
// array (size=3)
// 0 => string 'apple' (length=5)
// 1 => string 'lemon' (length=5)
// 2 => string 'banana' (length=6)
配列のインデックスを指定して、そこに値を代入することで、配列の値を変更することができます。
配列に値を追加する
<?php
$fruits = ['apple', 'lemon', 'banana'];
$fruits[] = 'peach';
var_dump($fruits);
// array (size=4)
// 0 => string 'apple' (length=5)
// 1 => string 'lemon' (length=5)
// 2 => string 'banana' (length=6)
// 3 => string 'peach' (length=5)
添字部分を空にすることで、配列の末尾に追加することができます。
配列の先頭の値を削除する array_shift
<?php
$fruits = ['apple', 'orange', 'banana'];
array_shift($fruits);
var_dump($fruits);
// array (size=2)
// 0 => string 'orange' (length=6)
// 1 => string 'banana' (length=6)
array_shift()を使うことで、配列の一番最初の値を削除することができます。
配列の最後の値を削除する array_pop
<?php
$fruits = ['apple', 'orange', 'banana'];
array_pop($fruits);
var_dump($fruits);
// array (size=2)
// 0 => string 'apple' (length=5)
// 1 => string 'orange' (length=6)
array_pop()を使うことで、配列の一番最後の値を削除することができます。
配列の真ん中の要素を削除したり、複数要素削除する array_splice
<?php
$fruits = ['apple', 'orange', 'banana'];
array_splice($fruits, 1);
var_dump($fruits);
// array (size=1)
// 0 => string 'apple' (length=5)
array_spliceの第一引数は配列、第二引数に開始したい場所、第三引数は何個の要素を削除するかを指定します。
第三引数を省略した場合、末尾まで削除できます。
配列の中身を入れ替える array_splice
array_spliceは、削除するだけでなく、削除した場所に新たに要素を追加する、つまり、配列の要素を入れ替えることができます。
<?php
$fruits = ['apple', 'orange', 'banana'];
array_splice($fruits, 1, 1, ['lemon', 'peach']);
var_dump($fruits);
// array (size=4)
// 0 => string 'apple' (length=5)
// 1 => string 'lemon' (length=5)
// 2 => string 'peach' (length=5)
// 3 => string 'banana' (length=6)
array_spliceの第四引数に追加したい要素を記述することで、第二引数で指定した開始位置から要素を追加することができます。