在php中重新排列数组

use*_*436 0 php arrays

我有一个问题,像0个索引的数组,我删除了第0个索引,现在它就像1到10,当我显示这个数组时,在第0个位置有一个空列.我想重新安排这个数组为0到9.目的是数组构造我的网格,第0个位置用于编辑,如果用户没有权限,那么我取消设置第0个元素.如何将我的数组重新排列为0到9

样本数组结构就像

[fields] => Array
    (
        [1] => Array
            (
                [header] => Array
                    (
                        [fieldName] => OFFERID
                        [displayName] => History
                        [width] => 70
                    )

                [visibility] => Array
                    (
                        [showOnStart] => 1
                        [editable] => 
                    )

                [cell] => Array
                    (
                        [type] => raw
                        [params] => Array
                            (
                                [text] => <a href="javascript:void(0);" id="{{OFFERID}}" class="btnHistory">History</a>
                            )

                    )

                [sort] => Array
                    (
                        [sortable] => 1
                    )

                [validator] => Array
                    (
                        [name] => 
                        [params] => 
                    )

            )

        [2] => Array
            (
                [header] => Array
                    (
                        [fieldName] => OFFERID
                        [displayName] => Offer Id
                        [group] => 0
                    )
Run Code Online (Sandbox Code Playgroud)

谢谢Alex

Dav*_*dom 6

有几种方法可以做到这一点,这里有两个最短的方法(array_values()/ array_merge()):

$array = array_values($array);
// or
$array = array_merge($array);
Run Code Online (Sandbox Code Playgroud)

但您可能会考虑使用array_shift()/ array_pop()/ array_splice()从数组中删除项目而不是(可能)unset()它 - 这些将自动将所有键移动到连续的0索引顺序.