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 :

appliquer une methode dynamiquement via des paramètres


Sujet :

Langage PHP

  1. #1
    Membre confirmé Avatar de gtraxx
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 043
    Points : 570
    Points
    570
    Par défaut appliquer une methode dynamiquement via des paramètres
    Bonjour, je tente d'exécuter une méthode et ce dynamiquement dans une fonction
    en faites j'ai une classe qui comprend mes réécritures et je souhaite appeller la classe avec une méthode mais ce sans avoir à écrire directement le nom de la méthode dans la fonction actuelle.
    En faites je souhaite passez en paramètre le nom de cette méthode via un GET OU POST.
    Bref, voici la fonction d'appel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    private function writeFile($lang,$module,$date,$string,$options_string=array(),$configloc,$configlastmod){
    		/*instance la classe*/
            $sitemap = new magixcjquery_xml_sitemap();
            // Appel de la class dcglobal_model_string en mode static avec arguments
            $callRewrite = forward_static_call_array(array('dcglobal_model_string', $string), $options_string);
    		foreach($module as $data){
    	       	$sitemap->writeMakeNode(
    			    dcglobal_model_host::domain_setting().$callRewrite,
    			    $date,
    			    $configloc,
    			    $configlastmod
    	        );
    	     }
    	}
    Ce qui m'étonne c'est la fonction forward_static_call_array, elle permet bien d'appeler les méthodes d'une classe static avec leurs paramètres ?
    Est ce bien de cette manière que je peux exécuter une méthode de manière dynamique ?
    Je viens de me rendre compte que cette fonction est utilisable uniquement sous php 5.3.
    Je vais devoir utilisé call_user_func_array(), c'est le même principe je suppose

  2. #2
    Expert éminent sénior

    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
    Points : 10 727
    Points
    10 727
    Par défaut
    forward_static_call_array c'est en PHP 5.3

  3. #3
    Membre confirmé Avatar de gtraxx
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 043
    Points : 570
    Points
    570
    Par défaut
    Effectivement j'ai éditer mon message avant votre post.
    je vais devoir utilisé call_user_func_array sur le même principe

  4. #4
    Expert éminent sénior

    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
    Points : 10 727
    Points
    10 727
    Par défaut
    Citation Envoyé par gtraxx Voir le message
    Effectivement j'ai éditer mon message avant votre post.
    je vais devoir utilisé call_user_func_array sur le même principe
    ouai c'est plus ou moins la même chose, forward_static_call_array ne peux etre utilise que dans une classe, ca te permet de pouvoir utilise static, et parent, mais je crois que ca marche aussi avec call_user_func_array, faudrait que je fasse quelque tests pour voir la vrai difference

Discussions similaires

  1. Introspection : Appel d'une methode dynamique ?
    Par stardeus dans le forum Langage
    Réponses: 6
    Dernier message: 05/12/2006, 11h48
  2. Réponses: 13
    Dernier message: 01/10/2006, 16h52
  3. Réponses: 5
    Dernier message: 28/04/2006, 15h40
  4. Réponses: 9
    Dernier message: 19/10/2005, 05h35
  5. [Reflection][Bean] Appel d'une méthode dynamiquement
    Par eraim dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 28/04/2004, 12h07

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