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 :

require et transfert de variable d'un perl à l'autre


Sujet :

Langage Perl

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2
    Par défaut require et transfert de variable d'un perl à l'autre
    Bonjour,

    Habituellement je code en php, je débute en perl...
    J'ai fais quelques recherche pour trouver une fonction similaire à la fonction include mais sans succès.
    J'ai trouvé require mais l'usage de cette fonction ne permet pas de transmettre de variable au script perl initial.

    En gros je souhaiterai avoir un programme principal avec sa logique propre et un fichier de conf en séparé pour faciliter l'édition.
    Hors require execute le programme en externe mais les variables déclarées ne sont pas utilisables dans le premier script.

    ça parait pourtant très simple comme problème mais le seul moyen que j'ai trouvé pour avoir des variables en externe c'est d'ouvrir le fichier de conf et de faire des commandes de recherche avec =~ pour ensuite traiter mes variables... ça me parait bien lourd pour pas grand chose...

    Code exemple :
    test.pl
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #!/usr/bin/perl
    push (@INC,system 'pwd');
    require ("test2.pl");
    print "$toto from test.pl";
    test2.pl
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #!/usr/bin/perl
    my $toto="HIAY";
    print "$toto";
    print "OHHHHHHHHH\n";
    Résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    0
    HIAYOHHHHHHHHH
     from test.pl
    La variable n'est pas transmise...

    Y a un truc simple que j'ai raté ?

  2. #2
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 35
    Par défaut
    Si ton test2.pl est un fichier de configuration fait plutot un fichier .pm.

    Un petit turorial de perl qui m'a servit:
    tuto pour ecrire des modules en perl (parties 13 14)

    Je pense que cela pourra déjá bien t'aider. (Bonne introduction à perl et il peut repondre a ton probleme je pense).

  3. #3
    Membre chevronné Avatar de Beniou
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    357
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Novembre 2009
    Messages : 357
    Par défaut
    Bonjour,

    Pour faire cela crée un module .pm et déclare tes variables globales avec le mot-clé "our" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    package mon_package;
    ...
    our $var = "value";
    ...
    1;
    Quand tu importeras ton module dans ton script tu pourras accéder à ta variable globale par exemple comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    use mon_package;
    ...
    print $mon_package::var."\n";
    En gros, lis la documentation sur comment créer des modules et les utiliser et ton problème sera résolu (on trouve une bonne quantité de doc et de tuto sur ce sujet)

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2
    Par défaut
    Merci pour l'intervention...
    J'avais effectivement vu des cours sur la partie dev objet (avec les packages donc) mais je n'avais pas pensé à les utiliser comme ça.

    Je pensais qu'il y avait un moyen plus simple, il me manquait par ailleurs le "our" pour faire un export.

    Apparemment sous perl c'est comme ça un point c'est tout .

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

Discussions similaires

  1. Pb de transfert de variables d'une page à l'autre
    Par dimitri13 dans le forum Langage
    Réponses: 5
    Dernier message: 26/11/2009, 10h50
  2. Session: pour le transfert de variables
    Par arti2004 dans le forum Langage
    Réponses: 15
    Dernier message: 28/05/2006, 18h16
  3. [VBA-E]Userform et transfert de variable
    Par Yanos dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 27/03/2006, 09h16
  4. transfert des variables de sessions
    Par Julie 2006 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 15
    Dernier message: 26/02/2006, 11h58
  5. [vb] Transfert de variables et listbox
    Par lepiou dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 13/01/2006, 17h39

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