【PHP】配列の値を変更する方法[追加する、削除する、置換する(要素を入れ替える)]

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の第四引数に追加したい要素を記述することで、第二引数で指定した開始位置から要素を追加することができます。

PHP

Posted by devsakaso