我想在php中按键对数组排序

我想在php中按键对数组排序,php,arrays,Php,Arrays,我有一个数组$data,形式如下: Array ( [1] => Array ( [group_exp] => Group 2 [cat_exp] => Category 3 [sub_exp] => Sub Category 4 ) [2] => Array ( [group_exp] => Group

我有一个数组$data,形式如下:

Array
(
    [1] => Array
        (
            [group_exp] => Group 2
            [cat_exp] => Category 3
            [sub_exp] => Sub Category 4
        )
    [2] => Array
       (
            [group_exp] => Group 3
            [cat_exp] => Category 4
            [sub_exp] => Sub Category 5
       )

)
但我想以以下形式保存此数组:

Array
(
    [0] => Array
        (
            [group_exp] => Group 2
            [cat_exp] => Category 3
            [sub_exp] => Sub Category 4
        )
    [1] => Array
       (
            [group_exp] => Group 3
            [cat_exp] => Category 4
            [sub_exp] => Sub Category 5
       )

)

如果您只想将索引减少一个,而不是全部为零,请考虑使用for循环方法:

$length = count($data);
for($i = 1; $i <= $length; $i++){
    $data[$i-1] = $data[$i];
    unset($data[$i]);
}

如注释所示,如果数组的顺序已经正确,则使用数组_值对索引进行重新排序

$array = array_values($array);
如果数组的固有顺序未排序(如[2]、[1]、[3]),则应按其索引对数组进行排序,请首先按键对数组进行排序:

ksort($array);
$array = array_values($array);

您好,我希望$data[1]的值变为$data[0],而$data[2]的值变为$data[1]您的问题是希望索引向下移动1吗?或者索引到处都是?数组_值。如果你不知道,你可以简单地使用foreach甚至for@Rakesh库马尔:作为一名编程和stackoverflow.com的新手,你能把代码发给我吗?请停止。这是一个开发者社区,不是慈善机构。如果你想专业成长,就开始学习。如果你不亲自尝试,你将一无所获。而且,不,仅仅看别人如何编写代码不太可能帮助你成为一名更好的开发人员。Rakesh,在未来,只要知道有一个,这样你就可以找到与你需要的相匹配的东西。