Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [XML][SimpleXML] Nie potrafię wyciągniąc atrybutów z xml
Forum PHP.pl > Forum > Przedszkole
qba10
Mam taki przykładowy XML
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <session time="1268766267" id="f707c0a040606675ba04b6d3ccbfff43" >
  3. <pies typ="object"><IndeX1 typ="string">gardlak</IndeX1>
  4. </pies>
  5. <kot typ="object"><IndeX1 typ="string">alojz</IndeX1>
  6. <IndeX2 typ="string">stefan</IndeX2>
  7. </kot>
  8. <slon typ="object"><afrykanski typ="object"><IndeX1 typ="string">robert</IndeX1>
  9. </afrykanski>
  10. <indyjski typ="object"><IndeX1 typ="string">ążźćółńę</IndeX1>
  11. </indyjski>
  12. </slon>
  13. </session>


No i taki kod:
  1. $xml = simplexml_load_file("plik.xml");
  2.  
  3. foreach($xml as $klucz => $wartosc)
  4. {
  5.  
  6. //cos takiego działa:
  7. echo $xml-snitch.gifpies["typ"]; // zwraca "object"
  8.  
  9. //samo:
  10. echo $klucz; // zwraca po kolei "pies, kot, slon";
  11.  
  12. //lecz :
  13. echo $xml-snitch.gif$klucz["typ"]; // nic mi nie zwraca...
  14. }
  15.  


więc jak pobrać atrybuty, w przypadku gdy plik może mieć dowolną budowę ?

PS: dlaczego w kodzie są emotki?
Zyx
Nie działa, ponieważ wziąłeś jakąś konstrukcję z kosmosu. Podpowiedź: sprawdź, co znajduje się w zmiennej $wartosc? Przecież po coś ona jest i właśnie tam znajdziesz to, czego szukasz, czyli obiekt dowolnego węzła z Twoim atrybutem, który chcesz pobrać.
qba10
Dzięki. Dałem $wartosc tylko na echo a że to obiekt nic nie zobaczyłem. Dopiero po sprawdzeniu zmiennej przez print_r() zrozumiałem błąd smile.gif
Dzięki
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.