Hallo zusammen,
ich habe ein kleines Problem mit dem auslesen von einem xml-Feed. Folgende xml Datei wird benutzt (Beispiel):
Jetzt habe ich das Problem das ich die "<character>" Tags nicht vernünftig ausgelesen und geordnet bekomme. Entweder bekomme ich gar keine ausgelesen oder alle komplett - also alle "<character>" von allen "<movie>" in einem Datensatz. Ich möchte aber natürlich nur die "<character>" die auch zum dem dazugehörigen "<movie>" gehören. Das können aber einmal 2 und das andere mal 10 "<character>" Tags sein.
Wie kann ich das in dem folgenden xml-Reader hin bekommen?
Ich habe leider über die Forensuche noch in phpnet nichts geeignetes gefunden was ich auch kapiere Da ich mich normal mit xml nicht so beschäftige, hab ich leider auch nicht DIE Ahnung davon. Für eine Hilfe von Euch wäre ich sehr dankbar.
Viele Grüße
Dierk
ich habe ein kleines Problem mit dem auslesen von einem xml-Feed. Folgende xml Datei wird benutzt (Beispiel):
PHP:
<?xml version='1.0' standalone='yes'?>
<movies>
<movie>
<title>Movie 1</title>
<characters>
<character>
<name>Ms. Coder</name>
<actor>Onlivia Actora</actor>
</character>
<character>
<name>Mr. Coder</name>
<actor>El ActÓr</actor>
</character>
</characters>
</movie>
</movies>
Jetzt habe ich das Problem das ich die "<character>" Tags nicht vernünftig ausgelesen und geordnet bekomme. Entweder bekomme ich gar keine ausgelesen oder alle komplett - also alle "<character>" von allen "<movie>" in einem Datensatz. Ich möchte aber natürlich nur die "<character>" die auch zum dem dazugehörigen "<movie>" gehören. Das können aber einmal 2 und das andere mal 10 "<character>" Tags sein.
Wie kann ich das in dem folgenden xml-Reader hin bekommen?
PHP:
// RSS Fedd
$stream = "deineXMLdatei";
// Feed laden
if (!$xml = simplexml_load_file ($stream)) {
die("Fehler beim Einlesen der XML Datei");
}
// Ausgabe Array
$out = array();
// auszulesende Datensaetze
$i = 5;
// Items vorhanden?
if (!isset($xml->movies->movie)) {
die("Keine Items vorhanden");
}
// fetchen der Items
foreach($xml->movies->movie as $item) {
$data = array();
$data['title'] = $item->title;
//$data['date'] = date("d.m.Y", strtotime($item->pubDate));
// Pushen des Ausgabe Array´s
array_push($out, $data);
// wenn auszulesende Datensaetze erreicht -> Abbruch
if ($i == 1) {
break;
}
$i--;
}
// in $out stecken nun die Datensaetze
Ich habe leider über die Forensuche noch in phpnet nichts geeignetes gefunden was ich auch kapiere Da ich mich normal mit xml nicht so beschäftige, hab ich leider auch nicht DIE Ahnung davon. Für eine Hilfe von Euch wäre ich sehr dankbar.
Viele Grüße
Dierk