如何删除数组的第1,第2和最后一个索引?

时间:2017-02-22 12:37:35

标签: php arrays

我使用array_splice删除数组的第0个和第1个索引,我也想删除最后一个索引。

怎么做?

array_splice($arr, 0, 2);

这是我的阵列 -

Array ( [code] => 1 [name] => Abc [On] => 15619 [OP] => 15886 [Vac] => 31505 [Target] => 50702 [Co] => 62.14 )

7 个答案:

答案 0 :(得分:2)

具有正确语法的

array_splice可以提取所需的数组。

$arr = [1,2,3,4,5];
$newArr = array_splice($arr, 2, -1);
print_r($newArr);
// prints
Array
(
    [0] => 3
    [1] => 4
)

答案 1 :(得分:2)

请试试这个

     $a1 = Array ( 
           'code' => 1,
           'name' => Abc, 
           'On' => 15619, 
           'OP' => 15886, 
           'Vac' => 31505, 
           'Target' => 50702, 
           'Co' => 62.14 );
       echo "<pre>"; 
       print_r(array_splice($a1,2,-1));

输出

Array
(
    [On] => 15619
    [OP] => 15886
    [Vac] => 31505
    [Target] => 50702
)

答案 2 :(得分:2)

你可以用这种简单的方式做到:

$arr = array_slice($arr, 2, count($arr)-3, true);

  • 偏移2,用于跳过前两个条目
  • -3因为第二个arg的长度不是第二个偏移量或范围

答案 3 :(得分:2)

只需在主阵列上使用两个shift和一个pop操作。

$array = your_array();

array_shift($array); //remove 1st
array_shift($array); //remove 2nd
array_pop($array); //remove last

print_r($array); //required array

答案 4 :(得分:1)

这是我得到的最简单的解决方案。

array_pop

(PHP 4,PHP 5,PHP 7) array_pop - 从数组末尾弹出元素

<?php
$stack = array("orange", "banana", "apple", "raspberry");
$fruit = array_pop($stack);
print_r($stack);
?>

来源:php.net/manual/en/function.array-pop.php

答案 5 :(得分:1)

您可以使用更短的unset()语法作为

unset($arr[1], $arr[2], count($arr) );

答案 6 :(得分:0)

使用拼接功能时有两种选择

首先是:

array_splice($arr, 0, 2);
array_splice($arr, -1);
print_r($arr);

第二个选项是以智能方式使用拼接功能

$arr1 = array_splice($arr, 2, -1);
print_r($arr1);

希望它会对你有所帮助。