|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Futur Membre du Club
![]() Inscription : janvier 2007 Messages : 42 ![]() |
Bonjour,
J'essaye d'utiliser un ArrayObject dans une des méthodes d'une classe Lorsque je tente de parcourir son contenu par un foreach ou un iterateur et de l'afficher rien ne se passe. Pourtant lorsque j'accède directement au propriété pour les afficher ça marche. Le $data->count() m'indique pourtant 0. J'avoue ne pas comprendre ce comportement. Ca fait un moment que je cherche et je trouve pas si quelqu'un à une idée. Voici mon code : Code :
|
||
|
|
00
|
|
|
#2 |
![]() ![]() Guillaume RossoliniDirecteur technique Inscription : février 2004 Messages : 13 720 ![]() |
Es-tu certain que le compteur interne est remis à zéro après le while et avant le foreach ? J'ai peur qu'en l'état actuel des choses, lorsque tu commences le foreach ce compteur soit déjà à la fin de ton tableau à cause du while.
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework) Ressources PHP - Ressources Zend Framework |
|
|
00
|
|
|
#3 | |
|
Futur Membre du Club
![]() Inscription : janvier 2007 Messages : 42 ![]() |
Merci pour la réponse ,
Si j'enlève le 'while' ça ne change rien je viens de retester dans le doute. J'avoue ne pas comprendre du tout. Est ce que c'est un comportement normal ? Si je passe l'écriture dans le style tableau habituel : La j'ai bien un affichage par la boucle : Citation:
Est ce que cela pourrait venir d'un bogue de php (j'utilise la version 5.2.0) |
|
|
|
00
|
|
|
#4 |
![]() ![]() Guillaume RossoliniDirecteur technique Inscription : février 2004 Messages : 13 720 ![]() |
En fait tu as deux méthodes :
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework) Ressources PHP - Ressources Zend Framework |
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : janvier 2007 Messages : 42 ![]() |
C'est bon j'ai résolu le problème, il faut le paramètre ArrayObject::ARRAY_AS_PROPS si on veut pouvoir boucler sur le
ArrayObject. Je trouve que c'est dommage ça devrait être son comportement par défaut car là je ne vois pas bien l'utilité de l'utiliser sans ce paramètre. Ça oblige également à lui passer 2 arguments lors de la construction. Donc sans ce paramètre on peut l'utiliser comme le design patern Registre mais on ne peut pas boucler dessus pour lister son contenu. Il faut donc absolument connaitre son contenu. N'hésitez pas à me corriger si je dis des bêtises ![]() Merci pour l'aide. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com