配列内の要素を削除したい場合は、 unset を直接使用できますが、配列のインデックスは再配置されません。
結果は次のとおりです:
配列 ([0] => a [2] => c [3] => d )
では、欠落している要素が埋められ、配列のインデックスが再作成されるようにするにはどうすればよいでしょうか?答えは array_splice() です:
結果は次のとおりです:
配列 ([0] => a [1] => c [2] => d )
配列内の特定の要素を削除します
空の配列の削除を追加
例:
結果:
配列 (
[a] =>ABC
[b] =>bcd
[c] =>
[d] => デフ
)
unset() 関数で削除しても、配列のインデックス値は変更されません。
$arr = array_slice($arr, 0, 3);
以上です。
array_slice() 最初のパラメータは切り取られる配列、2 番目のパラメータは開始位置、3 番目のパラメータは長さです。
これは、$arr 配列を、0 番目の要素から下に 3 つの要素を数えて切り取ることを意味します。
array_slice は非常に柔軟に使用でき、負のパラメーターをサポートできます。詳細については、PHP マニュアルを確認してください。
cn.php.net/manual/en/function.range.php