0

この出力があるとしましょうprint_r。これは動的であり、各条件が同じではありません

Array
(
    [2] => Array
        (
            [1] => 24
            [2] => 23,25
        )

    [3] => Array
        (
            [3] => 27
            [4] => 27,26
            [5] => 28,27,26
        )

)

ご覧のとおり、配列要素[3]は から始まります.2番目の要素が同じでない場合[3][4][5]、どのようにそれを開始する[1][2]...[n]のですか.

理想的には、私が探しているのは次のようなものです

Array
(
    [2] => Array
        (
            [1] => 24
            [2] => 23,25
        )

    [3] => Array
        (
            [1] => 27
            [2] => 27,26
            [3] => 28,27,26
        )

)

どうすればそれを達成できますか? ありがとう

4

1 に答える 1

3

array_values新しい数値インデックスを持つ配列の値を返します。

foreach($a as $k => $v) {
  $a[$k] = array_values($v);
}

一部のサブ配列のみを再インデックス化する場合は、条件を追加します。


機能的アプローチ:

$a = array_map(function($v) {
  return array_values($v);
}, $a);
于 2012-09-01T15:15:32.590 に答える