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

Symfony PHP Discussion :

Copier contenu d'un objet vers un autre objet


Sujet :

Symfony PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Décembre 2008
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 62
    Points : 38
    Points
    38
    Par défaut Copier contenu d'un objet vers un autre objet
    Bonjour à tous,

    Avant tout, je vous souhaite tous mes meilleurs voeux et une bonne année 2014 !

    Je cherche à savoir s'il existe une solution pour copier les datas d'un objet vers un autre objet ayant les mêmes noms de variables mais pas en nombre de variable ?

    Exemple :

    Entity1 : UserName, FirstName, LastName, PrimarySmtpAddress
    Entity2 : UserName, FirstName, LastName, PrimarySmtpAddress, CreatedAt, DateOfBirth,...

    J'ai 2 objets : objet 1 de l'entity 1 et objet 2 de l'entity 2. J'aimerai copier les valeurs de l'objet 2 vers le 1er objet. Est ce possible ? Ou dois je tout faire manuellement avec les getters/setters ?

    Merci d'avance.

    Bonne journée.

  2. #2
    Membre averti
    Avatar de magicshark
    Homme Profil pro
    Dans une SS2I donc pas que JAVA
    Inscrit en
    Octobre 2011
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dans une SS2I donc pas que JAVA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 133
    Points : 320
    Points
    320
    Par défaut
    J'ai pas fait de php depuis quelques temps mais je crois me rappeller d'un truc comme ça :

    Dans l'objet que tu veux remplir
    tu fait une méthode qui fait ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public function($obj1){
    foreach ($this as $var)
    {
      $this->$var = $obj1->$var;
    }
     
    }
    et dans la classe 1

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
      public function __get($property)
      {
       $retour = null;
       if(isset($this->$property)){
         $retour = $this->$property;
       }
      return $retour;
      }
    si ça arche pas j'y regarderai se soir
    Pourquoi faire simple quand on peut faire compliqué.

  3. #3
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    ou voir la fonction "clone" de php

  4. #4
    Nouveau membre du Club
    Inscrit en
    Décembre 2008
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 62
    Points : 38
    Points
    38
    Par défaut
    @magicshark : ça pourrait etre intéressant. A essayer.

    @dukoid : non tu peux pas avec clone car j'ai 2 entités différentes.

  5. #5
    Membre confirmé

    Homme Profil pro
    Chomeur
    Inscrit en
    Juin 2006
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Chomeur

    Informations forums :
    Inscription : Juin 2006
    Messages : 347
    Points : 452
    Points
    452
    Par défaut
    Bonjour,

    Il existe différentes classes en java qui sont spécialisées dans ce genre de copie, BeanUtils ou Dozer par exemple. Pour PHP, je ne l'ai jamais utilisé mais j'ai trouvé ça : https://github.com/luijar/php-beanutils

    En espérant que ça aide...
    Signature à venir...
    Ancienne : Divers NTIC (PHP, Dojo, à venir...) : http://tif44.fr/blog/

Discussions similaires

  1. [MySQL] Copier le contenu d une base vers une autre
    Par joboy84 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 16/07/2008, 11h28
  2. Réponses: 7
    Dernier message: 17/10/2007, 08h32
  3. Copier le contenu d'un fichier vers un autre fichier Excel
    Par mathias dans le forum VBA Access
    Réponses: 4
    Dernier message: 13/06/2007, 14h47
  4. [VBA-E]Copier le contenu d'une cellule vers une autre
    Par idir.17 dans le forum Macros et VBA Excel
    Réponses: 24
    Dernier message: 26/03/2007, 16h50
  5. Réponses: 12
    Dernier message: 22/02/2006, 15h28

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