Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Parsowanie XML (Proste)
Forum PHP.pl > Forum > XML, AJAX > XML
mihow
Witam! Będę bardzo wdzięczny za podpowiedź.
Staram się zaimplementować pogodę na stronę internetową. Mam taki oto plik XML:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <forecasts>
  3. <polska>
  4. <kujawsko-pomorskie>
  5. <wloclawek type="array">
  6. <forecast>
  7. <sign-human>prawie bezchmurnie</sign-human>
  8. <wind-heading type="integer">48</wind-heading>
  9. <relhum type="float">39.0</relhum>
  10. <pressmsl type="float">1027.3</pressmsl>
  11. <temp-max type="float">25.8</temp-max>
  12. <wind-speed type="float">7.2</wind-speed>
  13. <press type="float">1021.4</press>
  14. <precip type="float">0.0</precip>
  15. <apparent type="float">26.1</apparent>
  16. <temp-min type="float">9.4</temp-min>
  17. <sign>schl</sign>
  18. <forecast-date type="date">2011-05-10</forecast-date>
  19. </forecast>
  20. <forecast>
  21. <sign-human>prawie bezchmurnie</sign-human>
  22. <wind-heading type="integer">131</wind-heading>
  23. <relhum type="float">29.0</relhum>
  24. <pressmsl type="float">1022.7</pressmsl>
  25. <temp-max type="float">24.3</temp-max>
  26. <wind-speed type="float">10.8</wind-speed>
  27. <press type="float">1016.5</press>
  28. <precip type="float">0.0</precip>
  29. <apparent type="float">25.7</apparent>
  30. <temp-min type="float">10.2</temp-min>
  31. <sign>schl</sign>
  32. <forecast-date type="date">2011-05-11</forecast-date>
  33. </forecast>
  34. <forecast>
  35. <sign-human>zachmurzenie małe</sign-human>
  36. <wind-heading type="integer">177</wind-heading>
  37. <relhum type="float">27.0</relhum>
  38. <pressmsl type="float">1015.0</pressmsl>
  39. <temp-max type="float">25.4</temp-max>
  40. <wind-speed type="float">18.0</wind-speed>
  41. <press type="float">1008.6</press>
  42. <precip type="float">0.0</precip>
  43. <apparent type="float">25.4</apparent>
  44. <temp-min type="float">10.7</temp-min>
  45. <sign>sjhaa</sign>
  46. <forecast-date type="date">2011-05-12</forecast-date>
  47. </forecast>
  48. </wloclawek>
  49. </kujawsko-pomorskie>
  50. </polska>
  51. </forecasts>


I chciałym wyciągnąć np "sign-human" z pierwszego "forecast". Oto przykładowy kod:

  1. $url = 'http://mojplikxml.xml';
  2. $xml = simplexml_load_file($url);
  3.  
  4. echo $xml->polska->kujawsko-pomorskie->wloclawek[0]->forecast->sign-human;


Skrypt zwraca mi błąd: "Parse error: syntax error, unexpected T_OBJECT_OPERATOR, expecting ',' or ';' in /pl/pogoda.inc.php"

Co robię źle. Podpowiecie?
Crozin
Próbujesz odjąć "pomorskie->wloclawek" od "$xml->polska->kujawsko". Użyj ...-{'kujawsko-pomorskie'}->... żeby zniwelować problemy ze znakiem minusa.
pablo89pl
" - " w nazwie metody prawdopodobnie

@edit: crozin wyprzedził, powodzenia!
mihow
Bardzo dziękuję. Wszystko działa jak należy smile.gif
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.