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

Autres composants PHP Discussion :

[Registry] Modification d'un objet dans le registre


Sujet :

Autres composants PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 63
    Par défaut [Registry] Modification d'un objet dans le registre
    Salut tout le monde,
    j'arrive pas à modifier les valeurs d'un objet dans le registre.
    Dans une action d'un controlleur j'ai ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $user=Zend::registry('user');
    $user->name='verboz';
    Quand j'acccéde dans un autre controlleur à cet objet user que j'ai mis dans le registre et je veux lire $user->name je trouve aucune donnée.
    C'est quoi le problème?

    Cordialement Verboz

  2. #2
    Membre averti
    Inscrit en
    Février 2003
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 18
    Par défaut
    Tu dois enregistrer ton objet comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $user = new TonObjet;
    $user->name='verboz';
    Zend::register('user',$user);
    Et dans tes controlleurs recuperer grâce à :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $user=Zend::registry('user');
    echo $user->name

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    325
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 325
    Par défaut
    Citation Envoyé par krull
    Tu dois enregistrer ton objet comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $user = new TonObjet;
    $user->name='verboz';
    Zend::register('user',$user);
    Et dans tes controlleurs recuperer grâce à :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $user=Zend::registry('user');
    echo $user->name
    Je crois que ce qu'il souhaite faire, c'est créer un objet, le placer dans le registre, l'extraire et ensuite pouvoir le modifier et que la modification soit effective sur l'objet enregistré. C'est à dire qu'il voudrait pouvoir "extraire" l'objet du registre et retrouver la modification.

    le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $objet = new Objet();
    $objet->name = "maurice";
    Zend::register('monObjet', $objet);
    $ref = Zend::registry('monObjet');
    $ref->name = "jeannot";
    // la ligne suivante devrait afficher "jeannot"
    echo Zend::registry('monObjet')->name;
    J'ai fais le long tour volontairement.

    Ce code (adapté) devrait marcher en java.

    D'après ce que Verboz dit, c'est comme si Zend::registry() retournait une copie de l'objet stocké.

    D'ailleurs je n'ai même pas fait de test... demain j'essaye.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $objet = new Objet();
    $objet->name = "maurice";
    Zend::register('monObjet', $objet);
    $ref = Zend::registry('monObjet');
    $ref->name = "jeannot";
    // la ligne suivante retourne "jeannot"
    echo Zend::registry('monObjet')->name;
    Retourne bien 'jeannot'. (Selon les règles de PHP5), le registre agit par référence (=) et non par copie (clone).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Modification d'un objet dans une map
    Par Flaburgan dans le forum Collection et Stream
    Réponses: 14
    Dernier message: 06/11/2010, 10h36
  2. Réponses: 3
    Dernier message: 05/08/2008, 21h56
  3. Réponses: 7
    Dernier message: 12/09/2006, 16h22
  4. Réponses: 2
    Dernier message: 17/08/2006, 16h24
  5. Modif. d'un 'REG_BINARY' dans registre (2000/XP)...
    Par Boulotaur2024 dans le forum Langage
    Réponses: 4
    Dernier message: 08/05/2003, 16h12

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