PHP : Surchage du type d'un objet
Résolu
Ouam
-
Ouam -
Ouam -
Bonjour,
En utilisant la SPL j'ai créé un objet que je peux parcourir comme un array, ce dernier à toute les fonctionnalités d'un array.
Par contre le type est toujours "Object", ce qui est ennuyeux puisqu'en testant mon objet avec "is_array($monObjet)" je reçois false.
Est-il possible de surcharger le type de $monObjet afin de pouvoir renvoyer "array" plutôt qu'"object" ?
Je n'ai malheureusement pas la possibilité de modifier la façon de tester cette variable puisque ce dernier est réalisé par un moteur de template (Smarty) et non par mon propre code. Du coup mon objet n'est pas considéré comme un tableau et n'est pas parcouru comme je le souhaiterais.
Si quelqu'un a déjà rencontré ce problème ou a une idée sur le sujet ...
Merci à vous.
En utilisant la SPL j'ai créé un objet que je peux parcourir comme un array, ce dernier à toute les fonctionnalités d'un array.
Par contre le type est toujours "Object", ce qui est ennuyeux puisqu'en testant mon objet avec "is_array($monObjet)" je reçois false.
Est-il possible de surcharger le type de $monObjet afin de pouvoir renvoyer "array" plutôt qu'"object" ?
Je n'ai malheureusement pas la possibilité de modifier la façon de tester cette variable puisque ce dernier est réalisé par un moteur de template (Smarty) et non par mon propre code. Du coup mon objet n'est pas considéré comme un tableau et n'est pas parcouru comme je le souhaiterais.
Si quelqu'un a déjà rencontré ce problème ou a une idée sur le sujet ...
Merci à vous.
A voir également:
- PHP : Surchage du type d'un objet
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
Effectivement on peut faire comme ça, mais mon souci est que la vérification du type se fait dans un code qui n'est pas le mien (celui de Smarty), donc je n'ai pas la possibilité de caster mon objet.
Donc il faudrait vraiment que mon objet soit vu par PHP comme un Array.
Comme il est possible de surcharger des fonctionnalités de PHP (comme l'utilisation des [ ]) il est peut-être possible de surcharger également le type ....
Il suffit que je le cast au moment du passage en paramètre ...... (oui je sais c'est dur aujourd'hui).
Même si ce n'est pas le plus propre, ça fonctionne, je marque le problème comme résolu.
Si jamais je trouve autre chose de mieux j'apporterai un complément d'informations.
Merci à vous.