在数组中的任何位置弹出索引

时间:2016-02-16 07:17:28

标签: php

我希望能够从我的数组中的任何位置获取值,取消设置并移动索引,以便我的数组索引仍然有序。

原始阵列:

array:3 [
    0 => 'apple'
    1 => 'banana'
    2 => 'orange'
    3 => 'grapes'
]

获取索引1的值,取消设置并移位:

$val = 'banana';

array:2 [
    0 => 'apple'
    1 => 'orange'
    2 => 'grapes'
]

是否有类似于array_pop()或array_shift()的本机PHP函数可以执行此操作?

3 个答案:

答案 0 :(得分:1)

您可以使用array_values作为

$array = [
    0 => 'apple',
    1 => 'banana',
    2 => 'orange',
    3 => 'grapes'
];

unset($array[1]);

print_r(array_values($array));

答案 1 :(得分:1)

您必须创建自定义功能

function removeAndreindex($array,$index)
 {
    unset($array[$index]);
    return array_values($array)
 }

由于

答案 2 :(得分:0)

试试这个:

unset($array[array_search($val, $array)]);

函数array_search将返回值$val的索引,然后您可以使用unset()函数将其从数组中删除。