Use of undefined constant object - assumed 'object'

Petit nouveau ! | 3 Messages

16 nov. 2010, 11:51

Bonjour les gens,


dans une classe, j'ai plusieurs déclarations de type

Code : Tout sélectionner

protected $acteur = object;

ça va très bien sur mon serveur de développement, sous PHP 5.2.6

ça ne va pas du tout sur mon serveur de production, sous PHP 5.2.5, qui me dit

"Notice: Use of undefined constant object - assumed 'object' in /.../conf/includes.php on line 192", la fameuse ligne étant celle au dessus


j'ai cherché sur internet et je ne comprends pas d'où ça peut venir...

avez-vous des pistes de ce que je dois explorer pour comprendre comment résoudre : est-ce Apache, est-ce PHP ? Est-ce que ça concerne la configuration de PHP ? Je me perds devant ce problème inexplicable et ne sait pas où donner de la tête pour résoudre ce bug.


merci d'avoir pris le temps de me lire,


Philippe

ViPHP
ViPHP | 5462 Messages

16 nov. 2010, 11:58

protected $acteur = 'object';
object c'est censé être quoi ?

Petit nouveau ! | 3 Messages

16 nov. 2010, 12:23

Hello,

c'est un peu comme

Code : Tout sélectionner

protected $tplVars = array();
c'est juste en début de classe pour dire le type de variable, si ce sont des objets ou des tableaux par exemple.



merci,

Philippe

ViPHP
ViPHP | 5462 Messages

16 nov. 2010, 12:25

Hello,

c'est un peu comme

Code : Tout sélectionner

protected $tplVars = array();
c'est juste en début de classe pour dire le type de variable, si ce sont des objets ou des tableaux par exemple.



merci,

Philippe
tu peux pas faire ca avec les objects, le type hinting c'est uniquement dans les fucntion/methode
http://php.net/manual/fr/language.oop5.typehinting.php

donc fait juste
protected $acteur;

Petit nouveau ! | 3 Messages

16 nov. 2010, 13:12

merci stealth35 pour la réponse très rapide,

effectivement, cela fonctionne après correction proposée

reste la question : pourquoi ça marche d'origine sur mon serveur de développement et pas sur mon serveur de production ?

c'est la version PHP 2.6 qui permet une nouveauté par rapport à la version PHP 2.5 ? En tous cas je ne vois pas d'explications dans le lien que tu fournis.

j'aimerais comprendre, je ne suis pas un expert PHP et j'ai là une occasion d'approfondir un point clé de la configuration de PHP ou d'Apache...

et surtout que cela cache peut-être un bug plus important de configuration et que mon logiciel ne fonctionne pas réellement comme prévu, j'aimerais bien pouvoir anticiper


merci,


Philippe

ViPHP
ViPHP | 5462 Messages

16 nov. 2010, 14:19

si l'affichage des erreurs n'est pas activé c'est normale, donc peu etre que sur ton ancienne config c'était comme ca.
toujours développer avec le display_errors sur On, et le error_reporting sur E_ALL | E_STRICT