ホームページ >バックエンド開発 >PHPチュートリアル >多次元配列内のサブ配列のインデックスを再作成するにはどうすればよいですか?

多次元配列内のサブ配列のインデックスを再作成するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-05 15:37:02206ブラウズ

How to Reindex Subarrays in a Multidimensional Array?

多次元配列のサブ配列のインデックスの再作成

質問:

キーをリセットするにはどうすればよいですか?多次元配列内のすべてのサブ配列?たとえば、配列を考えてみましょう:

[
    '1_Name' => [
        '1' => 'leo',
        '4' => null
    ],
    '1_Phone' => [
        '1' => '12345',
        '4' => '434324'
    ],
]

それを次のように変換することを目指しています:

[
    '1_Name' => [
        '0' => 'leo',
        '1' => null
    ],
    '1_Phone' => [
        '0' => '12345',
        '1' => '434324'
    ],
]

答え:

インデックスを再作成するには配列内のすべての配列のキーを取得するには、array_map を array_values と組み合わせて使用​​します。コードは次のとおりです。

<code class="php">$arr = array_map('array_values', $arr);</code>

array_values は単一の配列のキーをリセットしますが、array_map はこの操作を親配列内のすべてのサブ配列に適用します。

あるいは、再実行する必要がある場合は、第 1 レベルの配列のキーにインデックスを付けるには、array_values を直接使用できます:

<code class="php">$arr = array_values($arr);</code>

以上が多次元配列内のサブ配列のインデックスを再作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。