PHP重新索引数组? [复制]

Posted

技术标签:

【中文标题】PHP重新索引数组? [复制]【英文标题】:PHP reindex array? [duplicate] 【发布时间】:2011-11-25 08:38:40 【问题描述】:

我有一个数组,我必须取消设置一些索引,所以现在看起来像

$myarray [0] a->1
         [1] a-7 b->3
         [3] a-8 b->6
         [4] a-3 b->2

如您所见,缺少 [2] 我需要做的就是重置索引,以便它们显示 [0]-[3]。

【问题讨论】:

这绝对不是 How do you reindex an array in php? 的重复项。共享解决方案不会建立重复性。 【参考方案1】:

使用array_values

$myarray = array_values($myarray);

【讨论】:

【参考方案2】:
$myarray = array_values($myarray);

array_values

【讨论】:

【参考方案3】:

array_values 完成这项工作:

$myArray  = array_values($myArray);

还有一些其他 php 函数不保留键,即重置索引。

【讨论】:

【参考方案4】:

与使用 array_values() 相比,这可能不是最简单的答案。

试试这个

$array = array( 0 => 'string1', 2 => 'string2', 4 => 'string3', 5 => 'string4');
$arrays =$array;
print_r($array);
$array=array();
$i=0;
    foreach($arrays as $k => $item)
    
    $array[$i]=$item;
        unset($arrays[$k]);
        $i++;

    

print_r($array);

Demo

【讨论】:

以上是关于PHP重新索引数组? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

PHP删除数组的第一个索引并重新索引

如何在 PHP 中重新索引数组但索引从 1 开始?

php删除二维数组的空值并重新建立数字索引

二维数组重新排序

如何删除数组元素然后重新索引数组?

重新索引数据框的正确方法? [复制]