Convertir des tableaux PHP multidimensionnels en tableaux 2D avec des clés de notation par points
Aplatir des tableaux PHP multidimensionnels en tableaux 2D avec des clés de notation par points peut être bénéfique dans divers scénarios. Il vous permet d'accéder de manière transparente aux valeurs de tableaux imbriqués à l'aide de la notation par points, ce qui améliore la lisibilité et la maintenabilité du code.
Fonction récursive pour convertir des tableaux imbriqués
Heureusement, PHP fournit une fonction récursive fonction qui peut réaliser cette conversion avec élégance :
<code class="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; }</code>
Explication :
Sortie :
Cette fonction générera le tableau 2D souhaité avec des clés de notation par points :
<code class="php">$newArray = array( 'key1' => 'value1', 'key2.subkey' => 'subkeyval', 'key3' => 'value3', 'key4.subkey4.subsubkey4' => 'subsubkeyval4', 'key4.subkey4.subsubkey5' => 'subsubkeyval5', 'key4.subkey5' => 'subkeyval5' );</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!