Bonjour,
Est-il possible d'écrire un code PHP orienté objet fonctionnant aussi bien sous PHP4 que sous PHP5 ? En dehors des constructeurs et de la visibilité des variables et méthodes quelles sont les différences entre les modèles objet ?
Version imprimable
Bonjour,
Est-il possible d'écrire un code PHP orienté objet fonctionnant aussi bien sous PHP4 que sous PHP5 ? En dehors des constructeurs et de la visibilité des variables et méthodes quelles sont les différences entre les modèles objet ?
PHP 5 a apporté de nombreuses améliorations niveau objet :
- la visibilité des membres et méthodes
- les destructeurs
- les constantes de classe
- membres et méthodes statiques
- le mot clé instanceof
- les interfaces et les classes abstraites
- les exceptions
- le typage (limité) des paramètres
- les méthodes finales
- les méthodes spéciales comme __clone, __call, __get, __set, ...
- (en aurais-je oublié ?)
Oui c'est possible mais le plus simple c'est de développer directement sur un environnement PHP4 pour s'en assurer :aie:
La grosse différence concerne le passage des variables. En php4, cela se fait par valeur, c'est à dire que dès qu'une fonction ou une assignation reçoit un objet en paramètre, c'est une copie de l'objet qui lui est passée. En php5, le passage se fait par référence (il n'y a pas de copie).Citation:
En dehors des constructeurs et de la visibilité des variables et méthodes quelles sont les différences entre les modèles objet ?