Maison > développement back-end > tutoriel php > Comment puis-je aplatir un tableau multidimensionnel en PHP sans récursion ni références ?

Comment puis-je aplatir un tableau multidimensionnel en PHP sans récursion ni références ?

Susan Sarandon
Libérer: 2024-12-29 02:57:14
original
197 Les gens l'ont consulté

How Can I Flatten a Multidimensional Array in PHP Without Recursion or References?

Aplatir des tableaux multidimensionnels en PHP

En PHP, aplatir un tableau multidimensionnel implique de le convertir en un tableau unidimensionnel. Cela peut être fait sans utiliser de récursion ni de références, ce qui permet d'obtenir un code plus efficace et plus lisible.

Une approche consiste à utiliser la fonction array_walk_recursive(), qui parcourt le tableau de manière récursive et applique une fonction de rappel spécifiée à chaque élément. . En utilisant la nouvelle syntaxe de fermeture introduite dans PHP 5.3, nous pouvons obtenir une solution concise et efficace.

Voici un extrait de code montrant comment aplatir un tableau multidimensionnel à l'aide de cette méthode :

function flatten(array $array) {
    $return = array();
    array_walk_recursive($array, function($a) use (&$return) { $return[] = $a; });
    return $return;
}
Copier après la connexion

Cette fonction parcourt de manière récursive l'intégralité du tableau, y compris les éléments imbriqués. Pour chaque élément rencontré, il l'ajoute au tableau $return, aplatissant ainsi la structure.

Il est important de noter que si vous avez besoin de conserver les associations de clés, vous pouvez utiliser array_walk_recursive() avec son deuxième argument défini sur true. dans la signature de la fonction de rappel.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal