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 :

Passer du Perl au PHP


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Profil pro
    Ingénieur Développement
    Inscrit en
    Juin 2006
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Développement

    Informations forums :
    Inscription : Juin 2006
    Messages : 140
    Par défaut Passer du Perl au PHP
    Bonjour je suis débutant en programmation
    je dois utiliser un programme qui me permet de récupérer des traps
    sauf qu'il est en perl et moi j'utilise php
    j'ai essayé de traduire un peu
    mais il y a plein de trucs que je connais pas (par exemple comment utiliser STDIN en php)
    voilà à quoi ressemble le fichier.pl
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    #!/usr/bin/perl
    #A simple trap handler
     
    my $TRAP_FILE = "/tmp/traps_all";      
     
    my $host = <STDIN>;     # Read the Hostname - First line of input from STDIN
     chomp($host);
    my $ip = <STDIN>;       # Read the IP - Second line of input
     chomp($ip);
     
    while(<STDIN>) {
            chomp($_);
            push(@vars,$_);
    }
     
    open(TRAPFILE, ">> $TRAP_FILE");
    $date = `date`;
    chomp($date);
    print(TRAPFILE "New trap received: $date for $OID\n\nHOST: $host\nIP: $ip\n");
    foreach(@vars) {
    	if(@vars =~ /SNMPv2-SMI/){
    		print "c'est rien\n";
    	}
    	else {
            print(TRAPFILE "TRAP: $_\n");
    	}
    }
    print(TRAPFILE "\n----------\n");
    close(TRAPFILE);
    est ce que quelqu'un peut m'aider à le mettre en php s'il vous plait?
    Merci beaucoup

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    ça doit plus ou moins donner :
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    #!/usr/bin/env php
    <?php
    define('TRAP_FILE', '/tmp/traps_all');
     
    function ask($prompt = '') {
        /* Voir aussi l'extension readline pour les machines Unix où PHP est utilisé en version CLI */
        if (!empty($prompt)) {
            fwrite(STDOUT, $prompt);
        }
        return trim(fgets(STDIN));
    }
     
    $host = ask('Host : ');
    $ip = ask('Ip : ');
    $vars = array();
    while (!feof(STDIN)) {
        array_push($vars, trim(fgets(STDIN)));
    }
    $fp = fopen(TRAP_FILE, 'a');
    foreach ($vars as $v) {
        if (preg_match('/SNMPv2-SMI/', $v)) {
            echo "Ce n'est rien" . PHP_EOL;
        } else {
            fwrite($fp, 'TRAP: ' . $v . PHP_EOL);
        }
    }
    fwrite($fp, PHP_EOL . '----------' . PHP_EOL);
    fclose($fp);
    ?>

  3. #3
    Membre confirmé
    Profil pro
    Ingénieur Développement
    Inscrit en
    Juin 2006
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Développement

    Informations forums :
    Inscription : Juin 2006
    Messages : 140
    Par défaut
    merci beaucoup
    une petite question
    la fonction ask, elle fait quoi exactement?

  4. #4
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    je dirai qu'elle écrit sur la sortie standard le texte que tu lui passes en paramètre et ensuite elle te retourne ce qui a été écrit par l'utilisateur sur l'entrée standard (la console/shell)

  5. #5
    Membre confirmé
    Profil pro
    Ingénieur Développement
    Inscrit en
    Juin 2006
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Développement

    Informations forums :
    Inscription : Juin 2006
    Messages : 140
    Par défaut
    je dirai qu'elle écrit sur la sortie standard le texte que tu lui passes en paramètre et ensuite elle te retourne ce qui a été écrit par l'utilisateur sur l'entrée standard (la console/shell)
    Salut
    En fait je demande ça parce que ce programme est un traphandler c'est à dire qu'il se lance tout seul lorsque je reçois une trap snmp (alerte)... donc en fait tu veux dire que le texte en paramètre ça serait le contenu de l'alerte?. Aussi, l'utilisateur ne tape rien sur l'entrée standard

  6. #6
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Ce n'est pas gênant : le principe est le même puisque vous utilisez les entrées/sorties standards. Si le prompt ne vous intéresse pas il suffit de le supprimer

  7. #7
    Membre confirmé
    Profil pro
    Ingénieur Développement
    Inscrit en
    Juin 2006
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Développement

    Informations forums :
    Inscription : Juin 2006
    Messages : 140
    Par défaut
    Ok merci à +

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

Discussions similaires

  1. Perl ou Php, pourquoi ?
    Par spilliaert dans le forum Général Conception Web
    Réponses: 7
    Dernier message: 02/07/2008, 10h37
  2. variable perl -> variable php
    Par pimpmyride dans le forum Web
    Réponses: 8
    Dernier message: 21/02/2006, 13h19
  3. [Système] Lancer un script perl avec PHP
    Par pepite dans le forum Langage
    Réponses: 2
    Dernier message: 09/01/2006, 12h30
  4. Choix ? Faire son site en perl ou php ?
    Par bakonu dans le forum Général Conception Web
    Réponses: 17
    Dernier message: 07/10/2005, 17h10
  5. Adduser en Perl ou PHP
    Par mickael.be dans le forum Linux
    Réponses: 2
    Dernier message: 29/11/2004, 13h22

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