Hier werden die XML-Daten aus einer Datei mit Endung xml geladen.
simplexml_load_file()
Hierbei darf man dann allerdings die Attributwerte in den xml Dateien nicht in Anführungszeichen setzen, sondern muss stattdessen das Hochkomma verwenden. z.B.:
<name nickname='Freddy'> Fred Feuerstein<name>
| Link | Script der Seite |
|---|---|
| example3.php5 | <?php foreach($xmlData->spieler as $mySpieler){ |
| bb_players.xml | <?xml version="1.0" encoding="utf-8"?> <basketball> <spieler> <name>Willi Wacker</name> <team>Bullen</team> </spieler> <spieler> <name>Fred Franzenhuber</name> <team>Bears</team> </spieler> </basketball> |
| example4.php5 | <?php foreach($myData->spieler as $mySpieler){ echo "<p/><p/>"; $arrKnoten=$myData -> children(); |
| bb_players2.xml | <?xml version="1.0" encoding="utf-8"?> <basketball> <spieler> <name spitzname='Will'>Willi Wacker</name> <team>Bullen</team> </spieler> <spieler> <name spitzname='Freddy'>Fred Franzenhuber</name> <team>Bears</team> </spieler> </basketball> |
| Link | Script der Seite |
|---|---|
| asXML.php5 | <?php $xmlData = simplexml_load_string($data); ?> |
| example2.php5 | <?php $xml = simplexml_load_string($xmlstr); |
| example2xml.php | <?php $xmlstr = <<<XML <?xml version='1.0' standalone='yes'?> <basketball> <spieler> <name>Willi Wacker</name> <team>Bullen</team> </spieler> <spieler> <name>Fred Franzenhuber</name> <team>Bears</team> </spieler> </basketball> XML; ?> |
| Link | Info |
|---|---|
| xml1.html | XML Daten in Flash laden und anzeigen, nur die ersten Kindelemente werden ausgegeben und in Variablen abgelegt. Also in diesem Beispiel nur der erste Kunde. Weitere Kunden würden hier nicht ausgelesen. |
| kunden1.txt | UTF-8 siehe Flash Tipp |
| xml2.html | XML Daten in Flash laden und anzeigen mittels Array und dynamisch erzeugten Textfeldern. Hier werden alle Kunden erfasst. |
| kunden2.txt | UTF-8 siehe Flash Tipp |
| xml3.html | Hier werden die Attributwerte ausgelesen, siehe Kommentar und xml Datei kunden3.txt |
| kunden3.txt | UTF-8 siehe Flash Tipp |
| xml4.html | Hier werden die Daten aus der MySQL Datenbank mittels PHP ausgelesen und XML konform aufbereitet. Flash liest dann die Daten ein und gibt sie aus. Im Actionscript braucht man nur den Verweis auf die PHP-Datei zu ändern, alles andere entspricht dem Beispiel: xml2.html |
| xmlFlash1.php | Siehe auch xmlFlash1a.php Die Tatsache, dass im Buchbeispiel die XML Knoten <Kundenliste><Kunden> nicht mit echo ausgegeben werden hat mich irritiert. Aber hier reicht es anscheinend, dass das Dokument als XML konform ausgezeichnet ist. Genauso wie man Html mit PHP mischt, kann man hier wohl auch XML-Dokumente mit PHP mischen. Der Browser stellt die Daten allerdings anders dar, als wenn sie in einem txt Dokument oder xml Dokument abgelegt wären. Es geht allerdings nicht, dass man den Prolog auch außerhalb der PHP Anweisung einfügt. |
| xml5.html | Das funktioniert nur wenn in der PHP INI always_populate_raw_post_data auf on eingestellt ist, was bei Strato nicht der Fall ist. Stattdessen kann man das nächste Beispiel xml6.html verwenden. |
| xml5.php | <?php $XMLData = $HTTP_RAW_POST_DATA; $objKunde = simplexml_load_string($XMLData); $name= $objKunde->Kunden[0]->Kunde[0]->Name; echo $name; ?> |
| xml6.html | Flash erstellt einen XML Baum und sendet ihn an eine PHP Datei. PHP liest den von Flash erstellten XML Baum aus und schreibt ihn in die Textdatei file.xml Actionscript (einfach) senden = new XML("<stay>bamboocha</stay>"); Actionscript (XML Baum) myXML = new XML();
|
| xml6.php | <?php /* Eine Datei zum Schreiben öffnen */ /* Jeweils 1kB Daten lesen und /* Die Streams schließen */ ?> |
| file.xml |
|