SimpleXML: Unterschied zwischen den Versionen
Aus Wikizone
| Zeile 3: | Zeile 3: | ||
== SimpleXML 101 == | == SimpleXML 101 == | ||
Quelle: http://stackoverflow.com/questions/1893024/basic-simplexml-working-example Zugriff 7/2013 | Quelle: http://stackoverflow.com/questions/1893024/basic-simplexml-working-example Zugriff 7/2013 | ||
| + | |||
| + | Example: | ||
| + | <pre> | ||
| + | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
| + | <programme> | ||
| + | <title>Billy Bushwaka</title> | ||
| + | <episodeNumber>2</episodeNumber> | ||
| + | <description>Billy Bushwaka entertains</description> | ||
| + | <url>play.swf</url> | ||
| + | </programme> | ||
| + | </pre> | ||
| + | |||
First of all, always name your PHP variables after the node they represent. | First of all, always name your PHP variables after the node they represent. | ||
Version vom 4. Juli 2013, 12:31 Uhr
Simple XML ist eine PHP Schnittstelle zum Parsen von XML Dateien.
SimpleXML 101
Quelle: http://stackoverflow.com/questions/1893024/basic-simplexml-working-example Zugriff 7/2013
Example:
<?xml version="1.0" encoding="ISO-8859-1"?> <programme> <title>Billy Bushwaka</title> <episodeNumber>2</episodeNumber> <description>Billy Bushwaka entertains</description> <url>play.swf</url> </programme>
First of all, always name your PHP variables after the node they represent.
// the root node is ie <programme/>
$programme = simplexml_load_file("local.xml");
Access to children (nodes) as if they were object properties.
echo $programme->title;
If there are multiple children using the same name, you can specify their 0-based position
// first <title/> child echo $programme->title[0];
// create or change the value of the second <title/> child $programme->title[1] = 'Second title';
Access to attributes as if they were array keys
// <mynode attr="attribute value" /> echo $mynode['attr'];
XPath always returns an array.
More Hints
Alternative xpath:
$result = $xml->xpath("//programme/title");
XML Daten von URL holen
$url = "http://username:password@url.com"; $xml = file_get_contents($url); $data = new SimpleXMLElement($xml);