XML-Datei mit php bis zu bestimmter Zeile auslesen?
Sanny
- php
Hallo,
ich versuche gerade, eine XML-Datei per php auszulesen und wiederzugeben, allerdings nur einen bestimmten Tag incl. aller Unterknoten.
z.B.
<root>
<div class="knoten">
<div class="unterknoten>...</div>
</div>
<div class="knoten">
<div class="unterknoten>...</div>
</div>
</root>
Ich will nur den ersten "div class="knoten" mitsamt Unterknoten ausgeben, nicht den zweiten und nicht evtl. weitere.
Das komplette xml auszugeben funktioniert. Aber wie gibt man nur Teilbereiche aus? Ich suche schon ne ganze Weile in SimpleXML-Informationen herum und bin mehr und mehr verwirrt.
Vielen Dank!
Sanny
Hallo,
falls es jemanden interessiert, ich bin selbst zumindest schonmal weitergekommen: auf die einzelnen Zeilen (nicht knoten) kann man mit file() zugreifen. Wenn man z.B. die Inhalte der ersten 3 Zeilen eines xmls ausgeben will, schreibt man:
<?php
$lines = file('http://www.beispiel.de/beispiel.xml');
echo utf8_decode(rawurldecode($lines[1]));
echo utf8_decode(rawurldecode($lines[2]));
echo utf8_decode(rawurldecode($lines[3]));
?>
Sanny
Hi,
es wäre schön, wenn du deine XML-Fragen erst mal in einem Thread bündelst, anstatt ständig neue aufzumachen. Dann kann man auch besser verfolgen, welche Fortschritte sich einstellen, und wo es noch Probleme gibt.
ich versuche gerade, eine XML-Datei per php auszulesen und wiederzugeben, allerdings nur einen bestimmten Tag incl. aller Unterknoten.
Dann durchlaufe den DOM-Baum, bis du diesen Knoten gefunden hast (oder suche dir eine andere Möglichkeit, ihn zu lokalisieren/identifizieren), und durchlaufe dann (ggf. rekursiv) seine Kindknoten.
Und was du im zweiten Posting dieses Threads geschrieben hast, ist ziemlicher Quark. XML ist ganz und gar nicht dafür gedacht, "zeilenweise" verarbeitet zu werden; das ist sogar idR. so gut wie unmöglich. Wenn man sowas wollte, würde man ein anderes Format nehmen, bspw. CSV.
MfG ChrisB