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] Instanciation dynamique


Sujet :

Langage PHP

  1. #1
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 115
    Points : 120
    Points
    120
    Par défaut [POO] Instanciation dynamique
    Bonjour,

    POur créer un objet on utilise la forme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $obj = new MaClass ;
    Est ce que "MaClass" peut être passé dynamiquement ?

  2. #2
    Membre émérite
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Points : 2 969
    Points
    2 969
    Par défaut
    Salut, tu peux utiliser l'API de réflexion de PHP5 :
    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
    18
    19
    20
    21
    <?php
    class MyClass {
      public function sayHello() {
        echo 'Hello from MyClass';
      }
    }
     
    class OtherClass {
      public function sayHello() {
        echo 'Hello from OtherClass';
      }
    }
     
    $reflect = new ReflectionClass('MyClass');
    $object = $reflect->newInstance();
    $object->sayHello(); // Hello from MyClass
     
    $reflect = new ReflectionClass('OtherClass');
    $object = $reflect->newInstance();
    $object->sayHello(); // Hello from OtherClass
    ?>
    Bon développement
    Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN

    F.A.Q. : Java, PHP, (X)HTML / CSS

    N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème

  3. #3
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 115
    Points : 120
    Points
    120
    Par défaut
    nickel !

  4. #4
    Membre habitué
    Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2007
    Messages : 87
    Points : 186
    Points
    186
    Par défaut
    Normalement tu peux instancier une classe à partir d'une string, non ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    class machin { public function __construct($var) { echo $var; } }
     
    $class = 'machin';
    $obj = new $class('hello world');

  5. #5
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 115
    Points : 120
    Points
    120
    Par défaut
    et bien justement je ne sait pas ... je vais essayer ca

  6. #6
    Membre du Club Avatar de eexit
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 61
    Points : 50
    Points
    50
    Par défaut
    Citation Envoyé par Chasseur d'étoiles Voir le message
    Normalement tu peux instancier une classe à partir d'une string, non ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    class machin { public function __construct($var) { echo $var; } }
     
    $class = 'machin';
    $obj = new $class('hello world');
    Bonsoir,

    En effet. Cela fonctionne parfaitement

    Bonne continuation.
    Etudiant L3 Informatique
    --
    Twitter | Blog | Website

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

Discussions similaires

  1. [POO] Instancier un objet avec le nom de la classe
    Par shinchun dans le forum Langage
    Réponses: 4
    Dernier message: 08/06/2006, 13h44
  2. Instanciation dynamique
    Par yon386 dans le forum C++
    Réponses: 5
    Dernier message: 15/02/2006, 21h32
  3. [POO] Variable Dynamique de Classe
    Par CNoob dans le forum Langage
    Réponses: 5
    Dernier message: 31/01/2006, 22h05
  4. [VB.NET] instanciation dynamique
    Par lucie.houel dans le forum ASP.NET
    Réponses: 1
    Dernier message: 21/11/2005, 12h54
  5. Instanciation dynamique d'ActiveX
    Par cathar_rhythm dans le forum MFC
    Réponses: 12
    Dernier message: 28/06/2005, 08h11

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