PHP 配列の要素削除
こういう連想配列があったとして 1つ目の恵太(夫)を削除したいとする。
$hogeのprint_rの実行結果。
Array
(
[User] => Array
(
[0] => 恵太
[1] => 良夫
[2] => 太郎
)
)
unsetで配列要素削除
unset($hoge[‘user’][0]);
Array
(
[User] => Array
(
[1] => 良夫
[2] => 太郎
)
)
削除は出来たものの、0というキーも一緒に削除された。
array_spliceで配列要素削除
$hogehoge = array_splice($hoge[‘user’], 1);
print_r($hogehoge);
Array
(
[User] => Array
(
[0] => 良夫
[1] => 太郎
)
)
先ほどの0番目が削除され、新たに良夫が0番から始まった。
配列の順番を崩すことなくキーを削除したい場合はarray_splice()の第2引数まで指定すればよさげ。
夫を削除しましたが、夫婦仲は良好です。