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 :

Je ne veux pas de guillemets


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 16
    Points : 16
    Points
    16
    Par défaut Je ne veux pas de guillemets
    Bonjour,
    Je suis en train de taper une petite fonction pour recuperer des infos sur ma distrib :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function distro() {
    	$file = new fichier('/etc/lsb-release');
    	$output = $file->read();
     
    	preg_match('#DISTRIB_DESCRIPTION=(.*)#', $output, $Description);
    	preg_match('#DISTRIB_CODENAME=(.*)#', $output,$Codename);
     
    	$result = $Description[1].' '.$Codename[1];
    	return $result;
    }
    et en fait dans la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    preg_match('#DISTRIB_DESCRIPTION=(.*)#', $output, $Description
    Il me renvoit dans $Description[1] : "Ubuntu 6.10"
    Et je voudrais essayer de supprimer les guillemets. J'ai donc essayé cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    preg_match('#DISTRIB_DESCRIPTION="(.*)#', $output, $Description
    Mais ca ne marche pas, ca ne renvoit rien, quelqu'un aurait une idée siouplaît ??

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    297
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 297
    Points : 303
    Points
    303
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	preg_match('#DISTRIB_DESCRIPTION="(.*)"#', $output, $Description);
    je ne suis pas très familiers des RegEx encore, mais je pense que ça devrait fonctionner

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 22
    Points : 25
    Points
    25
    Par défaut
    Tu veux supprimer les guillemets à l'affichage. C'est un traitement après avoir trouver les lignes à l'aide de preg_match.

    Tu dois traiter $Description pour supprimer les guillemets avec, par exemple, str_replace().

  4. #4
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 16
    Points : 16
    Points
    16
    Par défaut
    Merci de ta réponse juJuv51, mais ca ne marche pas. J'ai par contre essayé la technique de Hansolo,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $Descrip = str_replace('"','',$Description[1]);
    idem ca ne marche pas, ca me renvoit toujours "Ubuntu 6.10".
    J'ai donc essayé ce coup ci ('"')(tout collés):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $Descrip = str_replace('& quot;','',htmlspecialchars(($Description[1])));
    Pareil ca ne marche pas, par contre quand j'enleve le &:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $Descrip = str_replace('quot;','',htmlspecialchars(($Description[1])));
    ca me renvoit : &Ubuntu 6.10&
    Mais ca ne m'arrange pas non plus...
    Merci de votre aide.

  5. #5
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    430
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2006
    Messages : 430
    Points : 557
    Points
    557
    Par défaut
    Je trouve étonnant que la solution proposée par juJuv51 ne fonctionne pas pour toi. J'aurais proposé la même chose que lui, et j'ai testé par acquis de conscience => ca marche...
    Merci à Microsoft pour avoir transformé un métier relativement terne et basé sur une approche bêtement technique et rigoureuse des faits, en challenge quotidien, nécessitant une remise en question permanente à l'échelle du quart d'heure

  6. #6
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 16
    Points : 16
    Points
    16
    Par défaut
    Citation Envoyé par bkill
    Je trouve étonnant que la solution proposée par juJuv51 ne fonctionne pas pour toi. J'aurais proposé la même chose que lui, et j'ai testé par acquis de conscience => ca marche...
    Ah bon ben je ne comprends pas du tout alors...
    Je fais exactement la même chose chez moi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	preg_match('#DISTRIB_DESCRIPTION="(.*)"#', $output, $Description);
    	print_r($Description);
    	preg_match('#DISTRIB_CODENAME=(.*)#', $output,$Codename);
    	print_r($Codename);
    Et ca me renvoit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Array ( ) Array ( [0] => DISTRIB_CODENAME=edgy [1] => edgy )
    Mon tableau $Description est vide.. ??

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 22
    Points : 25
    Points
    25
    Par défaut
    Citation Envoyé par bkill
    Je trouve étonnant que la solution proposée par juJuv51 ne fonctionne pas pour toi. J'aurais proposé la même chose que lui, et j'ai testé par acquis de conscience => ca marche...
    Bizarre. Si le fichier d'origine contient les guillemets, preg_match() ne retournera jamais les lignes concernées.

    Avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $Description[1] = str_replace('"', '', $Description[1]);
    print_r($Description);
    ça ne marche pas ?

  8. #8
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 16
    Points : 16
    Points
    16
    Par défaut
    Nan ca ne marche pas non plus :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function distro() {
    	$file = new fichier('/etc/lsb-release');
    	$output = $file->read();
     
    	preg_match('#DISTRIB_DESCRIPTION=(.*)#', $output, $Description);
    	preg_match('#DISTRIB_CODENAME=(.*)#', $output,$Codename);
     
    	$Description[1] = str_replace('"', '', $Description[1]);
    	print_r($Description);
     
    	$result = $Description[1].' '.$Codename[1];
    	return $result;
    }
    Ca me renvoit ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Array
    (
        [0] => DISTRIB_DESCRIPTION="Ubuntu 6.10"
        [1] => "Ubuntu 6.10"
    )
    Pff..
    Je ne pense pas que ca change beaucoup, mais comme vous le voyez je bosse sous linux (Ubuntu)...

    Au passage voila ce que contient /etc/lsb-release :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    DISTRIB_ID=Ubuntu
    DISTRIB_RELEASE=6.10
    DISTRIB_CODENAME=edgy
    DISTRIB_DESCRIPTION="Ubuntu 6.10"
    Je pourrais trés bien récuperer DISTRIB_ID et DISTRIB_RELEASE ca me donnerais ce que je veux, mais bon je ne comprends pourquoi ca ne marche pas avec les guillemets...

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 22
    Points : 25
    Points
    25
    Par défaut
    Je ne dis que des co..eries depuis le début. Autant pour moi, le regex donné depuis le début devrait fonctionner.

Discussions similaires

  1. [FLASH 8] Un SWF tourne en boucle : je ne veux pas !
    Par Olish dans le forum ActionScript 1 & ActionScript 2
    Réponses: 3
    Dernier message: 24/04/2006, 11h36
  2. XPManifest Delphi 2005 VCL : je veux pas qu'il se manifeste
    Par Harry dans le forum Composants VCL
    Réponses: 11
    Dernier message: 28/09/2005, 11h16
  3. Kmail veux pas marcher sur mon serveur avec postfix
    Par jean christophe dans le forum Réseau
    Réponses: 4
    Dernier message: 06/05/2005, 01h02
  4. Réponses: 9
    Dernier message: 12/01/2005, 17h00

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