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 :

modifier le nom d'une fonction avec une variable dans une boucle


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2015
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2015
    Messages : 15
    Par défaut modifier le nom d'une fonction avec une variable dans une boucle
    Bonjour à jour,

    Je souhaite faire un truc tout simple mais je ne sais pas si c'est possible :
    je voudrais modifier le nom de ma fonction pour qu'elle s'apelle update_1, update_2, update_3 etc... par une boucle for classique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for($i=1;$i<=10;$i++)
    {
    ${'update_collection_'.$i} = $dao->update_1($dc_name_1, $dc_type_1, $dc_card1_1, $dc_card2_1, $dc_card3_1);
    }
    sauf que si j'écris
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dao->update_.$i($dc_name_1, $dc_type_1, $dc_card1_1, $dc_card2_1, $dc_card3_1);
    ca ne fonctionne pas.

    Quelqu'un a t il une idée svp ?

  2. #2
    Membre très actif Avatar de zaza576
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2013
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2013
    Messages : 175
    Par défaut
    Salut,

    et avec cette approche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $nomFonction = 'update_';
     
    $dao->($nomFonction.$i)(mes paramètres de fonction)

  3. #3
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Salut,

    généralement, on préfère monter le nom de la méthode et ensuite on l'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $method = 'update_'.$i;
    $dao->$method(...);

  4. #4
    Membre averti
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2015
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2015
    Messages : 15
    Par défaut Merci pour vos réponses c'est parfait !
    Merci à vous deux pour vos reponses ça a débloqué mon problème

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

Discussions similaires

  1. [XL-2007] Mettre variables dans une matrice qui est utilisée par une fonction
    Par Agalis dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/04/2012, 09h08
  2. attribuer dynamiquement une fonction avec parametre variable dans un onclick
    Par ernestrenan dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/10/2011, 19h03
  3. Réponses: 1
    Dernier message: 12/05/2011, 12h48
  4. Réponses: 6
    Dernier message: 08/12/2007, 14h33
  5. Réponses: 2
    Dernier message: 23/11/2007, 11h33

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