IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[POO] Surcharge d'attributs PHP <= 5.0.3


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut [POO] Surcharge d'attributs PHP <= 5.0.3
    Bonjour,

    Problème sérieux en vue ! J'ai transféré mon système de gestion sur un serveur tier ce matin (pour test avant mise en production) et là, la conséquence imprévue..., PHP emet une erreur fatale, les attributs privés ne peuvent pas être modifiés directement...

    Pourtant j'ai implémenté les méthodes __get et __set pour outrepasser la chose dans toutes les classes concernées, et je n'ai aucune problème sur mes serveurs, dont la version la moins récente de PHP est la 5.1.2...

    Je me demandais donc si PHP 5.0.3 (c'est la version installée sur le maudit serveur) pouvait être à l'origine du problème ?

    Ou si quelqu'un a eu la même curiosité ?

    Dans le pire des cas je vais devoir me taper un "Recherche - Remplacer" global en changeant les attributs private en public, ce n'est pas grand chose à faire, mais ça fausse tout mon travail...

    Merci à toute lueur...

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 882

  3. #3
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par jeff_!
    Salut Jeff !

    Merci pour ton lien, j'espère que ce n'est pas ce bug récurant... Je vais essayer de faire d'autres tests de surcharge, mais je comprend pas, il n'y est pas sensé avoir de problème puisque ces méthodes ont été implémentées nativement à PHP 5...


    Super matinée en perspective...


    A plus

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 882
    Par défaut
    j'ai commencé avec php5.04 et ca marche

  5. #5
    Invité
    Invité(e)
    Par défaut
    Apparament le serveur veut vraiment rien savoir, à tous les coups il me balance l'erreur fatale :


    Fatal error: Cannot access private property MyClass::$myVa...

    Les méthodes de surcharge ressemblent à ça :
    Code : 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
    
          public function __get($property)
          {
                 if (!is_null($this->$property)) {
                       return $this->$property;
                }
                
                 return NULL;
          }
           
          public function __set($property, $value)
          {
                if (isset($property)) {
                      $this->$property = $value;
                }
          }
    
    T'as pas une idée ?

  6. #6
    Invité
    Invité(e)
    Par défaut
    Apparament, il ne s'agirait pas d'un bug selon :
    http://bugs.php.net/bug.php?id=34893
    ...

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 882
    Par défaut
    je dirais bien que tu est dans le meme situation
    un probleme de reference

    fait un dump (ou echo)de ton objet et de l'autorefence pour voir
    , en d'autre terme il faudrai faire evoluer la version de php
    ou metre une rustine
    au attend est ce que le mode compatibilté avec le zend engine 1 est activé
    car on repasse au systeme de reference de php4

Discussions similaires

  1. [POO] Objet en attribut d'un objet
    Par Tchinkatchuk dans le forum Langage
    Réponses: 7
    Dernier message: 06/12/2005, 10h00
  2. [POO] Surcharge d'opérateurs []
    Par Amnesiak dans le forum Langage
    Réponses: 28
    Dernier message: 11/11/2005, 12h44
  3. [POO] langage objet et php.
    Par FFF dans le forum Langage
    Réponses: 15
    Dernier message: 09/11/2005, 18h36
  4. [POO] Heritage d'attribut statique surchargé !
    Par Jaxofun dans le forum Langage
    Réponses: 25
    Dernier message: 16/08/2005, 09h01
  5. Réponses: 3
    Dernier message: 23/08/2004, 17h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo