par
haugure » 18 févr. 2005, 18:00
La visibilité d'une propriété ou d'une méthode peut être définie en préfixant la déclaration avec le mot-clé : public, protected ou private. Les éléments déclarés publics public peuvent être utilisés par n'importe quelle partie du programme. Les éléments protégés protected limitent l'accès aux classes héritées (et à la classe qui a définie l'élément). Les éléments privés private limitent la visibilité uniquement à la classe qui les a définis.
Maintenant que je pense avoir saisie le principe je pense que ton erreur dois se situer dans la déclaration de ta classe ou plutot sa redeclaration.
Imaginons qu'on passe une classe par URL ou par une session... si tu ne redeclare pas ta classe en redifinissant sa structure avant de la "deserialiser" (avoir oublier d'inclure sa structure contenu dans un fichier *.inc par exemple) logiquement PHP aurra aucune facon de vérifier que tel ou tel attribut est public ou privé... a vrai dire je ne sais pas comment il pourrait faire pour gérer ca

ca m'intéresse beaucoup d'ailleur de savoir comment il fait si je me trompe ...
Je pense donc qu'il doit falloir faire une redeclaration de la classe dans la page qui recoit la classe ceci avant de faire un unserialize.
[quote]La visibilité d'une propriété ou d'une méthode peut être définie en préfixant la déclaration avec le mot-clé : public, protected ou private. Les éléments déclarés publics public peuvent être utilisés par n'importe quelle partie du programme. Les éléments protégés protected limitent l'accès aux classes héritées (et à la classe qui a définie l'élément). Les éléments privés private limitent la visibilité uniquement à la classe qui les a définis. [/quote]
Maintenant que je pense avoir saisie le principe je pense que ton erreur dois se situer dans la déclaration de ta classe ou plutot sa redeclaration.
Imaginons qu'on passe une classe par URL ou par une session... si tu ne redeclare pas ta classe en redifinissant sa structure avant de la "deserialiser" (avoir oublier d'inclure sa structure contenu dans un fichier *.inc par exemple) logiquement PHP aurra aucune facon de vérifier que tel ou tel attribut est public ou privé... a vrai dire je ne sais pas comment il pourrait faire pour gérer ca :shock: ca m'intéresse beaucoup d'ailleur de savoir comment il fait si je me trompe ... :D
Je pense donc qu'il doit falloir faire une redeclaration de la classe dans la page qui recoit la classe ceci avant de faire un unserialize.