ドット表記キーを使用して多次元 PHP 配列を 2D 配列に変換する
ドット表記キーを使用して多次元 PHP 配列を 2D 配列にフラット化すると、次のような利点があります。さまざまなシナリオ。これにより、ドット表記を使用してネストされた配列の値にシームレスにアクセスできるようになり、コードの可読性と保守性が向上します。
ネストされた配列を変換する再帰関数
幸いなことに、PHP には再帰関数が用意されています。この変換をエレガントに実現できる関数:
$result = array();
$ritit = new RecursiveIteratorIterator(new RecursiveArrayIterator($myArray));
foreach ($ritit as $leafValue) {
$keys = array();
foreach (range(0, $ritit->getDepth()) as $depth) {
$keys[] = $ritit->getSubIterator($depth)->key();
}
$result[join('.', $keys)] = $leafValue;
}
説明:
出力:
この関数は、ドット表記を使用して目的の 2D 配列を生成します。キー:
$newArray = array(
'key1' => 'value1',
'key2.subkey' => 'subkeyval',
'key3' => 'value3',
'key4.subkey4.subsubkey4' => 'subsubkeyval4',
'key4.subkey4.subsubkey5' => 'subsubkeyval5',
'key4.subkey5' => 'subkeyval5'
);
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3