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 Perl Discussion :

[PERL] Nom de Variable Dynamique


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7
    Par défaut [PERL] Nom de Variable Dynamique
    Bonjour,

    Je suis une débutante en langage PERL.
    Je souhaiterai savoir comment avec un incrément $i créer des noms de variables dynamiquement.
    Je me perds dans la syntaxe.

    Ce serait pour utiliser des noms de tableaux de hashage % différents en référence \ dans un tableau @.
    Je ne sais pas si je suis claire.
    Merci d'avance.

  2. #2
    Membre émérite
    Avatar de GnuVince
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    679
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 679
    Par défaut
    Je suis un peu perdu par ton explication, plus de contexte pourrait aider (ce que tu veux mettre dans ton hash par exemple). C'est certain qu'il existe une façon plus propre de régler ton problème. Par contre, dans le but d'informer, voici comment faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    {
        no strict 'vars';
        $i = 10;
        ${"foo$i"} = "dynamique!";
        print $foo10, "\n";
    }

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7
    Par défaut
    Merci bcp, ça marche

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7
    Par défaut
    Citation Envoyé par GnuVince
    Je suis un peu perdu par ton explication, plus de contexte pourrait aider (ce que tu veux mettre dans ton hash par exemple). C'est certain qu'il existe une façon plus propre de régler ton problème. Par contre, dans le but d'informer, voici comment faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    {
        no strict 'vars';
        $i = 10;
        ${"foo$i"} = "dynamique!";
        print $foo10, "\n";
    }
    Pourrais-tu m'éclairer sur l'utilisation de
    no strict 'vars';
    ?

    Est-ce que c'est obligatoire de l'utiliser pour ce problème de variables dynamiques ? Pour un souci de lisibilité et de fiabilité, j'emploie
    use strict;
    pour la partie déclarative avec my.

    Merci.

  5. #5
    Membre émérite
    Avatar de GnuVince
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    679
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 679
    Par défaut
    Si tu utilises use strict, le no strict 'vars' est obligatoire en effet. Et tu es mieux de le mettre dans un bare block, de façon à ce que à la sortie du bloc ça reviennent complètement strict.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7
    Par défaut [PERL] Syntaxe
    Citation Envoyé par GnuVince
    Si tu utilises use strict, le no strict 'vars' est obligatoire en effet. Et tu es mieux de le mettre dans un bare block, de façon à ce que à la sortie du bloc ça reviennent complètement strict.
    C quoi un bare block stp ?

  7. #7
    Membre Expert Avatar de MarneusCalgarXP
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    911
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 911
    Par défaut
    Citation Envoyé par mcshu
    C quoi un bare block stp ?
    C'est un bloc qui commence par une accolade ouvrante et qui se termine par une accolade fermante

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

Discussions similaires

  1. [JSTL] nom de variable "dynamique"
    Par gmonta31 dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 04/05/2006, 13h31
  2. Nom de variable dynamique
    Par mavina dans le forum Linux
    Réponses: 7
    Dernier message: 26/04/2006, 20h48
  3. Réponses: 4
    Dernier message: 13/09/2005, 11h50
  4. Noms de Variables dynamiques
    Par horec dans le forum Langage
    Réponses: 7
    Dernier message: 22/07/2005, 16h47
  5. [SQL SERVER 2000] Noms de variables dynamiques
    Par cassoulet dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 08/09/2004, 11h44

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