[PHP, XML] i problem z podwójnym węzłem bez atrybutu.

0

Hej,

Mam taki problem:
Próbuje wychwycić wszystkie dane z pliku XML, ale nie wiem na czym się oprzeć przy drugim węźle <eventdate> - nie ma tutaj atrybutów.
Węzłów <event> posidajączch różne "id" jest więcej niż na przykładzie, dlatego w przykładzie jest pętla foreach.

Wczoraj przejrzałem manual i nie znalazłem niczego co bym mógł wykorzystać.

Wie ktoś jak to rozkminić?

XML:

<?xml version="1.0" encoding="utf-8"?>
<root type="full">
  <event id="195127">
    <eventname>Kult</eventname>
    <venues>
      <venue>
        <venuename>Klub Stodoła</venuename>
        <city>Warszawa</city>
        <eventdates>
          <eventdate>
            <date>04/11/2009</date>
            <time>19:00</time>
          </eventdate>
          <eventdate>
            <date>05/11/2009</date>
            <time>19:00</time>
          </eventdate>
        </eventdates>
      </venue>
    </venues>
  </event>
</root>

PHP:

<?
$xml = simplexml_load_file('pojedynczy_jednasala_wieledatl.xml');

global $i;
$i=0;

foreach ($xml->event as $thisevent)
  {
    echo "<br />";
    echo $thisevent['id'];
    echo " - ";
    $eventname = $xml->event[$i]->eventname;;
    echo $eventname;
    echo " - ";
    $venuename = $xml->event[$i]->venues->venue->venuename; 
    echo $venuename;
    echo " - ";
    $city = $xml->event[$i]->venues->venue->city; 
    echo $city;
    echo " - ";
    $date = $xml->event[$i]->venues->venue->eventdates->eventdate->date;
    echo $date;
    echo " - ";
    $time = $xml->event[$i]->venues->venue->eventdates->eventdate->time;
    echo $time;
    $i++;
  }
?>

Wynik:

195127 - Kult - Klub Stodoła - Warszawa - 04/11/2009 - 19:00 

Powinno być:

195127 - Kult - Klub Stodoła - Warszawa - 04/11/2009 - 19:00 - 05/11/2009 - 19:00
0

eventdate to po prostu tablica.

0

OK, już rozwalone. Dzięki za szybką podpowiedz.

1 użytkowników online, w tym zalogowanych: 0, gości: 1