Posts Tagged ‘array’

On connaît la fonction count() en PHP, qui permet de connaître le nombre d’éléments d’un tableau. Mais si je veux savoir à quelle profondeur je risque d’être conduit en parcourant récursivement mon tableau, comment faire ?

J’en profite pour vous faire découvrir le deuxième argument de la fonction count(), qui mis à la valeur COUNT_RECURSIVE prendra en compte les éléments internes du tableau.

Je reprends l’exemple de la doc PHP pour éclairer mon propos.
$food = array(
'fruits' => array(
'orange', 'banana', 'apple' => array('verte', 'jaune', 'rouge')
),
'veggie' => array(
'carrot', 'collard', 'pea'
)
);
// count récursif
echo count($food, COUNT_RECURSIVE); // affiche 11 et non 8

Parmi les fonctions de tableau, il n’en existe aucune qui permet de juste obtenir la profondeur d’un tableau.
La raison, à mon avis, est qu’un tableau peut-être multi-dimensionnel de manière inégale, comme dans mon exemple ci-dessus.

Publicités