Je ne dit pas que cette fonction est la meilleur je dit juste qu'elle fait exactement la même chose que ce qu'il nous à donné contrairement à la tienne.
De plus lorsque tu dit
Quid si on oublie de préciser les sous-tableaux ?
c'est un peu bidon à ce moment la on peu dire que s'il oubli le <?php sa ne marchera pas non plus ou s'il ne branche pas son clavier sa ne marchera toujours pas...
Cette fonction n'est peut être pas exempte de tout reproche mais sa lui donne une piste d'amélioration.
C'est une question d'expérience. Il à donné un exemple. Ce à quoi je répond par un exemple de solution. Si ses données concrètes sont un peu différent de ce qu'il montre, ça ne marcherait pas, voilà pourquoi je ne cherche pas à coller aux exemples.
Et je n'aime pas donner non plus des solutions toutes faites, donc je privilégie la piste, comme d'utiliser les clés nommées pour stocker des valeurs, plutôt que de compter sur leur position hiérarchique dans le tableau.
Il faut aussi prendre en compte que le code est appelé à vivre, et que peut-être un jour, la structure du tableau changera. On gardera plus vite le nom d'une valeur plutôt que sa position, et si on ne prend pas garde, un petit changement peut provoquer une avalanche d'erreurs, et donc il vaut mieux construire un code tolérant et évolutif. Comment faire pour qu'a ce moment, quelqu'un se souvienne qu'il faut modifier un petit numéro lors de l'appel d'une fonction ou l'autre, et pourquoi ?
Les erreurs ne se commettent pas dans l'immédiat, mais dans la durée, quand tout le monde à oublié comment et pourquoi il faut faire certaines choses. C'est juste ça que je dis, tu ne propose pas vraiment une amélioration. Dans le court-terme ça peut fonctionner, mais dans le long-terme, c'est prendre de gros risques.