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 :

Savoir quelle méthode est appelée via le constructeur


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Par défaut Savoir quelle méthode est appelée via le constructeur
    Bonjour,

    je cherche à savoir s'il est possible dans le __construct() de connaitre la méthode appelée ?

    Exemple :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    class A{
     
    	public function __construct(){
    		// Ici je souhaiterais savoir que c'est la méthode 2 qui est appelée
    	}
     
    	public function methode(){}
     
    	public function methode2(){}
     
    }
     
    $objet = new A();
    $objet->methode2();

    En fait, je cherche un peu à savoir s'il existe l'opposé de la méthode magique __call.

    Merci à celui qui m'aidera

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    comme ca

    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
    class A
    {    
        public function __call($name, array $arguments)
        {
            var_dump($name);
            call_user_func_array(array($this, $name), $arguments);
        }
     
        protected function methode() {}
     
        protected function methode2() {} 
    }
     
    $objet = new A();
    $objet->methode2();

  3. #3
    Membre Expert Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Par défaut
    exact cela marche avec des appels de fonction en protected (je ne sais pas pourquoi). Toujours est il que je dois conserver mes fonction en visibilité publique donc ca ne marche pas

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    Citation Envoyé par Madfrix Voir le message
    exact cela marche avec des appels de fonction en protected (je ne sais pas pourquoi). Toujours est il que je dois conserver mes fonction en visibilité publique donc ca ne marche pas
    je sais bien, mais sinon c'est pas possible (j'aime pas trop m'avancer, en espérant avoir tord...)

  5. #5
    Membre Expert Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Par défaut
    Ben ca va pas être possible alors je dois garder ma visibilité en publique car c'est des services Flex qui nécessitent d'être en publiques pour pouvoir être lancés. Tant pis va falloir que je trouve une autre bidouille

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    Citation Envoyé par Madfrix Voir le message
    Ben ca va pas être possible alors je dois garder ma visibilité en publique car c'est des services Flex qui nécessitent d'être en publiques pour pouvoir être lancés. Tant pis va falloir que je trouve une autre bidouille
    c'est pour faire quoi dans le fond, y'a peu etre moyen de trouver une autre solution

Discussions similaires

  1. [Introspection] Savoir quelle classe a appelé une méthode
    Par muad'dib dans le forum Général Java
    Réponses: 2
    Dernier message: 26/11/2008, 17h34
  2. KeyStroke.getKeyStroke Savoir quelle touche est appuyée
    Par oOoOuuhmAn dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 08/06/2008, 20h48
  3. Savoir quelle application est au premier plan
    Par David dans le forum Delphi
    Réponses: 5
    Dernier message: 08/10/2006, 18h38
  4. [Copie de Fichier] Quelle méthode est la plus rapide ?
    Par n@n¤u dans le forum Entrée/Sortie
    Réponses: 16
    Dernier message: 04/05/2006, 14h59
  5. [VBA-PP]Quelle procédure est appelée au démarrage de PowerPoint
    Par jorge7281 dans le forum VBA PowerPoint
    Réponses: 11
    Dernier message: 27/04/2006, 18h31

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