Bonjour,
J'ai un souci avec la fonction "get_class_vars".
Voici un code exécutable, très simple :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 <?php class Mere { private $propMere; public function verif() { $nomClass = get_class($this); var_dump($nomClass); echo '<br/><br/>'; var_dump(get_class_vars($nomClass)); } } class Fille extends Mere { protected $propFille; } $test = new Fille(); $test->verif(); ?>
Voici le résultat sur notre serveur de développement :
Voici le résultat sur notre serveur de production :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 string(5) "Fille" array(1) { ["propFille"]=> NULL }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 string(5) "Fille" array(0) { }
Le serveur de développement a la version 5.2.12 de PHP (avec Apache 2.2)
Le serveur de production a la version 5.2.6 de PHP (avec Apache 2.2)
J'ai donc cherché pourquoi le résultat était différent.
J'ai trouvé un bug signalé sur php.net concernant les mêmes symptômes que mon problème, qui a été corrigé dans la version 5.2.7 de PHP.
Je met donc à jour le serveur de production, qui a maintenant la version 5.2.12 de PHP. Je le reboote.
En pensant que ça allait être réglé, j'ai eu la désagréable surprise de voir que le résultat de l'exécution est identique.
C'est toujours 2 résultats différents pour le même script sur une même version de PHP.
Il y a toujours une explication, mais là j'avoue être en manque d'idée, après une nouvelle journée de recherche.
Je remercie donc d'avance quiquonque pourrait m'éclairer sur ce souci !
Partager