Supposons que j'ai un tableau en PHP qui ressemble à cecinœuds feuilles Extrait du tableau multidimensionnel en PHP
array
(
array(0)
(
array(0)
(
.
.
.
)
.
.
array(10)
(
..
)
)
.
.
.
array(n)
(
array(0)
(
)
)
)
Et je besoin de tous les éléments de la feuille de ce tableau mulit dimensions dans un réseau linéaire, comment devrais-je faire cela sans recourir à la récursivité, comme ça?
function getChild($element)
{
foreach($element as $e)
{
if (is_array($e)
{
getChild($e);
}
}
}
Note: extrait de code ci-dessus, horriblement inachevé
Mise à jour: exemple de tableauArray
(
[0] => Array
(
[0] => Array
(
[0] => Seller Object
(
[credits:private] => 5000000
[balance:private] => 4998970
[queueid:private] => 0
[sellerid:private] => 2
[dateTime:private] => 2009-07-25 17:53:10
)
)
)
... snipped.
[2] => Array
(
[0] => Array
(
[0] => Seller Object
(
[credits:private] => 10000000
[balance:private] => 9997940
[queueid:private] => 135
[sellerid:private] => 234
[dateTime:private] => 2009-07-14 23:36:00
)
)
....snipped....
)
)
Y at-il une raison que vous ne voulez pas utiliser la récursivité? On dirait la technique la plus appropriée. – deceze
Qu'est-ce qui est horriblement incomplet à propos de cet extrait? – SilentGhost
J'ai omis le tableau final pour rassembler les éléments, et laissé de côté la partie else de l'instruction if; Quant à savoir pourquoi aucune récursion, c'est juste une préférence personnelle, et une peur que le script ne se transforme en boucle infinie. – Extrakun