Witam chciałem wyświetlić zawartość pliku xml na stronie, za pomocą simplexml.
Niestety mam problemy doszedłem do momentu gdzie wyświetla mi atrybut id, nie wiem w jaki sposób dostać się do reszty danych.
Część pliku xml
<?xml version='1.0' encoding="utf-8"?>
<hotels>
<hotel id="626">
<params>
<name>AIDA</name>
<city id="4">Sharm El Sheikh</city>
<region id="93">Sharm El Sheikh</region>
<country id="14">Egipt</country>
<seasontypeid>6</seasontypeid>
<standard>***</standard>
<seasontypename>Lato</seasontypename>
<categoryname>Hotel [cena za dzień]</categoryname>
</params>
<descriptions>
<description>
<label>Hotel</label>
<body><p style="text-align: left;">Zbudowany w 1994 roku, oddany po renowacji w 2008 roku. Położony na 27 000 m2. Składa się z piętrowych kameralnych budynków oferując 231 pokoi.</p></body>
</description>
<description>
<label>Lokalizacja</label>
<body><p style="text-align: left;">Położony w zatoce Ras Um Sid. Oddalony ok. 5 minut drogi busem hotelowym od rafy koralowej i plaży w zatoce Ras Um Sid i ok. 10 minut od plaży w Sharm El Maya. W odległości od lotniska ok. 20 km i od Nama Bay ok.7 km, gdzie kursują hotelowe mini busy.</p></body>
</description>
<description>
<label>Zakwaterowanie</label>
<body><p style="text-align: left;"><b>Pokój typu standard:</b> z możliwością dwóch dostawek dla dzieci lub jednej dostawki dla osoby dorosłej, posiada klimatyzację, łazienkę z suszarką do włosów, sejf za dopłatą, telefon, TV/SAT oraz lodówkę. Większość pokoi posiada balkon lub taras.</p></body>
</description>
<description>
<label>Wyposażenie i usługi hotelu</label>
<body><p style="text-align: left;">Recepcja, kantor wymiany walut, restauracja główna „Verdi‘’, restauracja a la carte "Panorama", lobby bar, dwa bary przy basenie, pub, plac zabaw dla dziec, programy animacyjnei. Dodatkowo płatne: salon piękności, sklepiki z pamiątkami i biżuterią, mini market, opieka lekarska, pralnia, centrum biznesowe. Do plaży hotelowej wydzielonej z publicznej, goście hotelowi dowożeni są kilka razy dziennie bezpłatnym busem hotelowym Leżaki i parasole przy basenie i na plaży bezpłatnie.</p></body>
</description>
<description>
<label>Sport i rekreacja</label>
<body><p style="text-align: left;"><b>Bezpłatnie:</b> 2 baseny z brodzikami dla dzieci, tenis stołowy, jacuzzi.<br />
<b>Odpłatnie:</b> korty tenisowe, squash, sauna, masaże, centrum nurkowe, sporty wodne na plaży.</p></body>
</description>
<description>
<label>Wyżywienie</label>
<body><p style="text-align: left;"><b>HB: </b>śniadanie i obiadokolacja w formie bufetu. Napoje do obiadokolacji dodatkowo płatne.</p>
<p style="text-align: left;"><b>All Inclusive:</b> śniadanie, obiad i kolacja w formie bufetu. Napoje bezalkoholowe i lokalne napoje alkoholowe w godzinach od 10:00 do 23:00.</p></body>
</description>
<description>
<label>Cena</label>
<body><p style="text-align: left;"><b>Cena zawiera </b>(PLN): bilet lotniczy, zakwaterowanie w hotelu (doba hotelowa zaczyna się w dniu przyjazdu od godz. 14:00, kończy o godz. 12:00), transfer lotnisko - hotel - lotnisko; opiekę polskojęzycznego rezydenta; wyżywienie wg opisu, podatek VAT, obowiązkowe ubezpieczenie (KL i NNW, Bagażu, ubezpieczenia od chorób przewlekłych TU EUROPA SA), opłaty lotniskowe i paliwowe. <br />
<b>Cena nie zawiera:</b> wizy płatnej przez klientów na lotnisku w Sharm El Sheikh - 15 usd, istnieje możliwość uzyskania bezpłatnej wizy na hasło „Synaj only”, szczegóły w katalogu Bee Free.</p>
<p style="text-align: left;"> </p>
<p style="text-align: left;"><b>PROMOCJA FREE MINUTE 2 DODATKOWO OBEJMUJE:</b><br />
- gwarancję stałej i niezmiennej ceny, <br />
- wycieczki fakultatywne gratis, <br />
Szczegóły oraz warunki dotyczące promocji zawarte są na stronie internetowej (www.beefree.pl)</p></body>
</description>
</descriptions>
<images>
<image>http://adres/images/bv/hotel/626/Obraz00001.jpg</image>
<image>http://adres/images/bv/hotel/626/Obraz00005.jpg</image>
<image>http://adres/images/bv/hotel/626/Obraz00006.jpg</image>
<image>http://adres/images/bv/hotel/626/Obraz00007.jpg</image>
<image>http://adres/images/bv/hotel/626/Obraz00003.jpg</image>
<image>http://adres/images/bv/hotel/626/Obraz00004.jpg</image>
<image>http://adres/l/images/bv/hotel/626/Image00002.jpg</image>
<image>http://adres//images/bv/hotel/626/Image00001.jpg</image>
</images>
</hotel>
Na początku chciałem aby wyświetliły się tylko nazwy hoteli.
$nazhotelu = simplexml_load_file('http://x25.pl/travelos/hotelfulllist.xml');
foreach ($nazhotelu->hotel as $p) {
echo '<li>' . $p . '<ul>'; foreach ($p->attributes() as $atr) {
echo '<li>' . $atr . '</li>'; }
}
?>
Ten skrypt wyświetla mi id hotelu w jaki sposób wyświetlić jego nazwę?
echo '<li>' . $atr->params->name. '</li>';
nie działa
Ten post edytował nikos 12.03.2010, 15:19:09