Welcome, Guest
Username: Password: Remember me
  • Page:
  • 1

TOPIC:

PHP: meteohub-xml auslesen 15 May 2010 10:09 #161358

  • benz
  • benz's Avatar Topic Author
  • Visitor
  • Visitor
Hallo zusammen

Die weatherBoxx legt auf meinen Server alle paar Minuten eine XML-Datei ab. Diese von der weatherBoxx ausgegebene XML-Datei sieht so aus (gekürzt):

<meteohub>
<config>
<language>de</language>
<temp_sensor unit="c" print="°C">th0</temp_sensor>
<hum_sensor unit="rel" print="%">th0</hum_sensor>
<dew_sensor unit="c" print="°C">th0</dew_sensor>
<baro_sensor unit="hpa" print="hPa">thb0</baro_sensor>
<wind_sensor unit="kmh" print="km/h">wind0</wind_sensor>
<rain_sensor unit="mm" print="mm">rain0</rain_sensor>
<row number="1">last60m</row>
<row number="2">last24h</row>
<row number="3">day1</row>
<row number="4">month1</row>
</config>
<data timeframe="actual">
<item sensor="th0" cat="temp" unit="c">4.5</item>
<item sensor="th0" cat="temp" unit="f">40.1</item>
</data>
</meteohub>


Das von mir gemachte PHP-File öffnet die XML-Datei:
<?php
$wetterdaten = simplexml_load_file('meteohub/all-sensors-xml.xml');?>

Das klappt meines Erachtens so auch.

Aber nun kann ich nicht auf die einzelnen Werte zugreifen. Dies mache ich so, aber etwas ist falsch:
<?php echo $wetterdaten->data->item->cat->unit; ?>


Es wird kein Fehler ausgegeben, sondern einfach nichts ausgegeben...

Kann mir da jemand auf die Sprünge helfen? Danke! :-)
Gruss benz

Please Log in to join the conversation.

PHP: meteohub-xml auslesen 15 May 2010 10:12 #161359

  • Markus Brotschi
  • Markus Brotschi's Avatar
  • Offline
  • Administrator
  • Administrator
  • Posts: 6927
  • Thank you received: 47
Salü Bruno

Kick mal Oli an, der ist inzwischen PHP und Typo3 Crack.

Er hat ein heisses Script geschrieben!

http://www.leimentalerwetter.ch/meteohub/werbebannerquer.php

Grüsse

Kusi

Please Log in to join the conversation.

PHP: meteohub-xml auslesen 15 May 2010 10:14 #161360

  • benz
  • benz's Avatar Topic Author
  • Visitor
  • Visitor
Ist das der Oli, der sich im meteohub-Forum "haol" nennt? Diesen Oli habe ich dort angekickt, aber noch keine Antwort erhalten.

Danke für den Tipp!

Gruss
Bruno

Please Log in to join the conversation.

PHP: meteohub-xml auslesen 15 May 2010 12:19 #161365

  • Oli
  • Oli's Avatar
  • Visitor
  • Visitor
Hallo Benz,

also zuerst must du mal die XML genau anschauen, und dies machst du mit dem kleine PHP Code am besten:

<?php
$filename = 'http://......datenxml.xml';
$xml = simplexml_load_file($filename); //Lädt die XML-Datei in ein


// Füg das hier mal ein und rufe das Script auf, sollte dir helfen.
print_r($xml);
?>


so wenn du das script aufrufst wird dir einiges klar.

Also Wichtig ist hier die Unterscheidung zwischen Array und SimpleXMLElement Object (bzw. generell Objekten). Auf Array-Werte greifst du mit
[...] zu und auf Attibute von Objekten mit
->


echo $xml->data[0]->item[0];

Hoffe so geholfen zuhaben.

Gruss Oli

Please Log in to join the conversation.

PHP: meteohub-xml auslesen 15 May 2010 12:42 #161367

  • benz
  • benz's Avatar Topic Author
  • Visitor
  • Visitor
Ich habe deinen Code nun in eine Webseite eingehängt... Aber ich komme beim besten Willen nicht darauf, was ich hier rauslesen muss!

http://www.onurb.net/wetter/meteohub_testxml.php

Ich sehe hier buchstäblich vor lauter Bäumen den Wald nicht mehr...

Gruss benz

Please Log in to join the conversation.

PHP: meteohub-xml auslesen 15 May 2010 12:53 #161368

  • Oli
  • Oli's Avatar
  • Visitor
  • Visitor
Hoi also als Beispiel die Aktuelle Temp:



echo $xml->data[0]->item[83];



ich bin leider nicht zu Hause sonst könnte ich dir das xml file etwas genauer zur ansicht senden..

gruss Oli

Please Log in to join the conversation.

PHP: meteohub-xml auslesen 15 May 2010 12:55 #161369

  • benz
  • benz's Avatar Topic Author
  • Visitor
  • Visitor
Doch jetzt habe ich die Idee! Aber das ist ja obermühsam! Ich konnte mal die automatische Prognose auswerten.

echo "Wert: ".$wetterdaten->data[0]->item[81]."- Fertig.";


Den Wert [81] rauszusuchen, war ja einfach, aber wie ich die anderen 200'000 Werten voneinander unterscheide, ist mir nicht ganz klar!

Auf jeden Fall bin ich nun ein Stückchen weiter!

Danke für die Hilfe, Oli!

Gruss benz

Please Log in to join the conversation.

PHP: meteohub-xml auslesen 15 May 2010 14:12 #161370

  • Oli
  • Oli's Avatar
  • Visitor
  • Visitor
Hoi Benz,
ok ich habe hier noch eine cödlein der das XML etwas übersichtlicher darstellt.
So kannst du das ganze Ausdrucken, dann geht es etwas besser.


<?php
$xml = simplexml_load_file('http://....datenxml.xml');
echo '<pre>';
print_r($xml);
echo '</pre>';
?>


So nochmals zu erklärung:

->data[0]->item[83]

data gibt dir das array an: Im [0] sind die Aktuellen Wetterdaten, im item[83]
sind die Werte drin.

Nun für 1 day also 24 Stunden ist dann data[1]->item[??]

Wenn du dir das xml mit dem obigen Code anschaust wirst du dann sehen.

ok hoffe jetzt das es etwas verständlicher ist.:gruebel:
gruss Oli

Please Log in to join the conversation.

PHP: meteohub-xml auslesen 15 May 2010 14:33 #161371

  • benz
  • benz's Avatar Topic Author
  • Visitor
  • Visitor
Hoi Oli

Mit dem Code ist es tatsächlich viel übersichtlicher Danke. Jetzt mache ich mich mal daran. Die Webseite umzuorganisieren.

Nochmals herzlichen Dank für deine Hilfe!

Viele Grüsse
Bruno

Please Log in to join the conversation.

PHP: meteohub-xml auslesen 15 May 2010 17:42 #161374

  • benz
  • benz's Avatar Topic Author
  • Visitor
  • Visitor
So, meine Wetterseite wetter.onurb.net konnte nun zum grossen Teil fertiggestellt werden. Dank Oli ist es mir gelungen, die Daten nun über ein XML File in einer PHP-Seite darzustellen.
Der Weg dahin war ziemlich harzig! Da es unglaublich viele Werte gibt, kann die Orientierung rasch einmal verloren geht.

Ich habe ein PDF gemacht mit allen meteohub-Variablen drin. Mit Hilfe dieses Dokumentes ist es nun wesentlich einfacher die richtigen Werte zu finden:
$wetterdaten->data[0]->item[81]


Ihr findet es im ZIP-Container. Wer weiss? Vielleicht kann das Dokument dem einen oder anderen helfen.

Gruss
Bruno

Attached files xml-Auswertung_meteohub.pdf.zip (91.5 KB)Â

Please Log in to join the conversation.

PHP: meteohub-xml auslesen 15 May 2010 18:08 #161375

  • Tobias Ferrari
  • Tobias Ferrari's Avatar
  • Offline
  • Administrator
  • Administrator
  • Posts: 3267
  • Thank you received: 11
Jesses Bruno!

Besten Dank für diese Übersicht, da stehen ja x-100 Werte zur Verfügung! :O
Das wird schon etwas Rechenzeit brauchen, diese alle jede Minute neu zu berechnen...

Gruss
Tobias

Please Log in to join the conversation.

Der Weise sagt nicht alles was er denkt, aber er denkt alles was er sagt.
www.wetterstation-wohlen.ch

PHP: meteohub-xml auslesen 15 May 2010 18:47 #161377

  • Oli
  • Oli's Avatar
  • Visitor
  • Visitor
Hoi Tobias,
das ist ja das coole an diesem xml, es steht alles drin was man braucht. Die xml wird in sekunden abgearbeit, man spürt nichts das es irgendwie am rattern wäre.

Vielen Dank noch an Benz für das PDF wollte es gerade auch machen.

Gruss Oli :)

Please Log in to join the conversation.

  • Page:
  • 1
Moderators: Markus Brotschi
Time to create page: 0.172 seconds
Go to top
JSN Boot template designed by JoomlaShine.com