我知道你可以使用「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)。 –