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

Bibliothèques et frameworks PHP Discussion :

[SimpleXML] Mais comment on faisant avant SimpleXml ?


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur

    Homme Profil pro
    Geek entrepreneur
    Inscrit en
    Novembre 2004
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Geek entrepreneur

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 224
    Par défaut [SimpleXML] Mais comment on faisant avant SimpleXml ?
    Salut,
    J'utilise SimpleXml en php5 pour décoder une chaine xml. Voici un exemple (tiré de la doc php) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $string = <<<XML
    <sizes>
       <size label="Square" width="75" height="75" />
       <size label="Thumbnail" width="100" height="62" />
       <size label="Small" width="112" height="69" />
       <size label="Large" width="112" height="69" />
    </sizes>
    XML;
    $xml = simplexml_load_string($string);
    $result = $xml->xpath("//size[@label='Large']");
     
    // print the first (and only) member of the array
    echo $result[0]->asXml();

    Résultat des courses : 2 lignes de php pour obtenir les lignes dont label="Large"
    En php4, il existe dom_xmltree et expat si je ne m'abuse, que je n'ai jamais utilisé. J'utilisais plutot PEAR_XML qui utilisait sans doute derrière l'un ou l'autre.

    J'ai donc deux questions :
    - est-il commun d'avoir ces deux librairies sur les hébergeurs "classiques" ?
    - est-ce possible en aussi peu de lignes de faire la même chose (je suppose que non) ?

  2. #2
    Membre éprouvé
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 513
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 513
    Par défaut
    Citation Envoyé par hugo123
    Salut,
    J'utilise SimpleXml en php5 pour décoder une chaine xml. Voici un exemple (tiré de la doc php) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $string = <<<XML
    <sizes>
       <size label="Square" width="75" height="75" />
       <size label="Thumbnail" width="100" height="62" />
       <size label="Small" width="112" height="69" />
       <size label="Large" width="112" height="69" />
    </sizes>
    XML;
    $xml = simplexml_load_string($string);
    $result = $xml->xpath("//size[@label='Large']");
     
    // print the first (and only) member of the array
    echo $result[0]->asXml();

    Résultat des courses : 2 lignes de php pour obtenir les lignes dont label="Large"
    En php4, il existe dom_xmltree et expat si je ne m'abuse, que je n'ai jamais utilisé. J'utilisais plutot PEAR_XML qui utilisait sans doute derrière l'un ou l'autre.

    J'ai donc deux questions :
    - est-il commun d'avoir ces deux librairies sur les hébergeurs "classiques" ?
    - est-ce possible en aussi peu de lignes de faire la même chose (je suppose que non) ?
    En php4 le xml etait bizarement supporté j'ai toujours galéré avec c'est en partie pour cela que je suis passé au 5 pour le simpleXML. Il me semble qu'en native le xml est pas bien géré mais il y a des extensions qui y remédiait.

  3. #3
    Membre éprouvé Avatar de kazhar
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    126
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 126
    Par défaut
    Non, Simplexml n'est pas (encore) commun chez les hébergeurs. La raison est simple. Il n'a été implémenté que avec PHP5, et peu d'hébergeurs ont fait la transition (mais beaucoup le proposent en plus de PHP4)

    En revanche, avec PHP 4, tu peut installer une librairie apparemment équivalente (que je n'ai pas testée)
    MiniXML : http://minixml.psychogenic.com/ (conseillée sur php.net)

    Et si tu a envie de t'amuser eh bien, pour récupérer les informations de ton document xml, il faut le parser

  4. #4
    Rédacteur

    Homme Profil pro
    Geek entrepreneur
    Inscrit en
    Novembre 2004
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Geek entrepreneur

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 224
    Par défaut
    Oui pour simpleXml je sais que c'est une spécificité php5.
    Je demandais pour dom_xmltree et expat. Et si éventuellement quelqu'un connaissait un peu.

Discussions similaires

  1. [simpleXML] XML : comment recuperer les x derniers objets?
    Par mozvillat dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 07/07/2006, 15h10
  2. [XSLT] - Modèle réutilisable... mais comment l'utiliser.
    Par jacquesh dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 17/02/2006, 11h07
  3. un simple break; mais comment ??
    Par kmaniche dans le forum C++
    Réponses: 2
    Dernier message: 14/02/2006, 22h33
  4. Réponses: 4
    Dernier message: 13/12/2005, 18h14
  5. HomeDB, oui mais comment ?
    Par Gregouz dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 27/10/2004, 15h27

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