2010-09-22 3 views
1

Quelqu'un peut-il me diriger vers un bon tutoriel sur xpath ou me donner une petite leçon ici? Aussi, si xpath est pour interroger xml, que devrais-je utiliser pour modifier le xml? Je suppose que ça devrait être quelque chose qui marche de pair avec xpath?PHP Xpath help

Cheers, Franky

+1

Habituellement, on pourrait utiliser les classes de traitement XML de PHP pour analyser et de les manipuler élément par élément (comme indiqué par les réponses ci-dessous), ou utilisez XSLT pour transformer un document XML entier. Je ne l'ai pas utilisé moi-même, mais vous pouvez trouver l'extension XSL de PHP utile. http://php.net/manual/en/book.xsl.php, http://en.wikipedia.org/wiki/XSLT, http://www.w3schools.com/xsl/ – Archimedix

Répondre

0

Here est un bon aperçu de travailler avec XML en PHP. Au lieu d'utiliser XPath, je recommande d'utiliser SimpleXML et DOM pour l'analyser. Par exemple ...

<?xml version="1.0" encoding="UTF-8"?> 
<books> 
    <book> 
     <title>Great American Novel</title> 
     <characters> 
     <character> 
     <name>Cliff</name> 
     <desc>really great guy</desc> 
     </character> 
    </characters> 
    </book> 
</books> 

Vous pouvez analyser en faisant cela (XML en supposant est en $xmlstr) ...

<?php 

    $xml = new SimpleXMLElement($xmlstr); 

    echo $xml->book[0]->title; // "Great American Novel" 
    ?> 
+0

Bravo, c'est exactement ce que je cherchais. –

+0

Vous ne faites pas de xpath dans votre exemple. – halfdan

+0

C'est vrai, mon exemple utilise DOM à la place. J'ai édité ma réponse pour refléter cela. –

0

Il n'y a pas l'introduction "rapide" à XPath à moins que vous donner quelques exemples de requêtes. J'ai trouvé la référence/tutoriel de w3schools pour être assez bon.

Pour modifier des documents XML en PHP, vous pouvez utiliser SimpleXML ou XMLReader/XMLWriter (et probablement d'autres implémentations HAPS XML dans PECL)