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 :

Bug ou pas bug sur module PEAR : Console_Getopt


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2007
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 233
    Points : 107
    Points
    107
    Par défaut Bug ou pas bug sur module PEAR : Console_Getopt
    Bonjour,

    Je suis entrain d'ecrire un script PHP dans lequel j'utilise le module PEAR Console_Getopt pour parser ma ligne de commande.

    Je suis tombé sur ce qui ressemble a un bug :

    Si je fait cette commande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    generer_comptes.php --file='liste.csv tain.zeb' -f='toto.txt béurk.csv'
    mon tableau d'argument retourné par Console_Getopt est le suivant :

    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
     
    Array
    (
        [0] => Array
            (
                [0] => Array
                    (
                        [0] => --file
                        [1] => liste.csv tain.zeb
                    )
     
                [1] => Array
                    (
                        [0] => f
                        [1] => =toto.txt béurk.csv
                    )
     
            )
     
        [1] => Array
            (
            )
     
    )
    il me met un = devant le nom de fichier toto .... :-(

    Voici le code :

    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
    30
    31
     
            $shortopts  = "";
    	$shortopts .= "f:";	// Valeur requise
    	$shortopts .= "d::";	// Valeur optionnelle
    	$shortopts .= "h";
     
    	$longopts  = array(
    		"file=",
    		"user=",	// requis
    		"delimiter==",	// Valeur optionnelle
    		"help"
    	);
     
    	// Get an instance of new Console_Getopt -> module de php-pear
    	require_once 'Console/Getopt.php';
    	$getopt = new Console_Getopt();
     
    	// Get the arguments & remove the filename from the list
    	$args = $getopt->readPHPArgv();
    	array_shift($args);
     
    	$options = $getopt->getopt( $args, $shortopts, $longopts );
    	print_r( $options );
    	if ( PEAR::isError( $options ) )
    	{
    		echo 'Got error: ' . $options->getMessage() . PHP_EOL;
    		show_help();
    		exit(0);
    	}
    ?>
    <?php

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Pas bug. Short options ne prend pas de signe '='.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    generer_comptes.php --file='liste.csv tain.zeb' -f 'toto.txt béurk.csv'

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2007
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 233
    Points : 107
    Points
    107
    Par défaut
    Yep j'avais vu çà mais je pensais que c'etait permissif quand même. Bon, je vais régler le probleme en testant l'existance du fichier CSV. Merci

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Si tu regarde le source, la présence du '=' n'est même pas testé pour short options, donc c'est exprès. Après on peut se poser la question de la cohérence, mais bon, c'est Pear :-)

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

Discussions similaires

  1. bug ou pas bug?
    Par ABN84 dans le forum Internet
    Réponses: 1
    Dernier message: 27/06/2009, 18h00
  2. Bug ou pas bug?
    Par Menuki dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 10/12/2008, 16h57
  3. bug (ou pas bug) avec des nombres décimaux
    Par cyberyan dans le forum Langage
    Réponses: 7
    Dernier message: 15/09/2008, 17h39
  4. FB: DB vide, impossible de connecter : Bug ou Pas Bug ?
    Par Rica dans le forum Connexion aux bases de données
    Réponses: 1
    Dernier message: 14/05/2005, 11h15

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