从PHP中的数组删除元素
数组使用基于索引的系统(从0开始)将元素存储在一起。虽然我们可以简单地将值设置为NULL,但它仍将是数组的一部分并占用内存空间。但是,使用高级PHP内置方法,我们可以轻松地从数组中删除元素。有2种方法可以从PHP中的数组中删除元素,下面将对此进行讨论。
1)使用 unset()
该unset()
方法获取需要从数组中删除的元素并将其删除。请注意,当您使用unset()
数组键时,键将不会重新索引,这意味着该数组中将不存在特定的索引,并且如果被访问将不会返回值。考虑这个例子,
码
<?php$array = array(0 => "apple", 1 => "banana", 2 => "carrot");
//unset the second element of array
unset($array[1]);
//Print the array
echo $array; // Output: (0 => "apple", 2 => "carrot")
?>
我们使用键作为索引定义关联数组,并从中取消设置第二个元素。现在我们剩下两个元素,它们之间没有第二个索引。如果要删除和移动元素,则需要使用下面讨论的array_splice方法。
2)使用array_splice()
unset()
除了重新排列和移动元素以填充空白外,它的功能与其他功能相同。如果您使用array_splice(),则键将自动重新索引,但是关联键不会与array_values()相对,后者会将所有键转换为数字键。
另外,array_splice()需要将offset作为第二个参数,这意味着要删除的元素数量。
码
<?php$array = array(0 => "apple", 1 => "banana", 2 => "carrot");
//从1个索引处开始拼接数组,
//即第二个元素并删除1个元素。
array_splice($array, 1, 1);
//Print the array
echo $array; // Output: (0 => "apple", 1 => "carrot")
?>
从输出中可以看到,该数组删除了第二个元素,但此后重新索引了该数组。
如果您喜欢这篇文章,请在下面分享您的想法。
以上是 从PHP中的数组删除元素 的全部内容, 来源链接: utcz.com/z/347118.html