我知道你可以使用“array_pop”去除数组中的最后一个元素。但是如果我想删除最后2或3,我该怎么办?如何删除阵列末尾的第n个元素
那么我将如何删除该数组中的最后2个元素?
<?php
$stack = array("orange", "banana", "apple", "raspberry");
$fruit = array_pop($stack);
print_r($stack);
?>
我知道你可以使用“array_pop”去除数组中的最后一个元素。但是如果我想删除最后2或3,我该怎么办?如何删除阵列末尾的第n个元素
那么我将如何删除该数组中的最后2个元素?
<?php
$stack = array("orange", "banana", "apple", "raspberry");
$fruit = array_pop($stack);
print_r($stack);
?>
使用array_splice并指定要删除的元素数量。
$stack = array("orange", "banana", "apple", "raspberry");
$fruit = array_splice($stack, -2);
print_r($stack);
正确的功能,但第二个参数是起始偏移量 - * not *是第三个参数的元素数量。使用'array_splice($ stack,-2)'移除从数组尾部计数的元素。 –
作为押韵:弹出两次,或array_slice!
可以使用array_slice()
带有负length
:
function array_remove($array, $n) {
return array_slice($array, 0, -$n);
}
测试:
print_r(array_remove($stack, 2));
输出:
Array
(
[0] => orange
[1] => banana
)
试试['array_slice'(HTTP:/ /www.php.net/array_slice)。 –