Voor een thuisproject probeer ik een weer dashboard te genereren.
Ik maak hier gebruik van de weatherunderground data. Na wat research lukt het me nu JSON data in te laden en te verwerken. Echter loop ik nu vast als de data wat dieper in de JSON lagen zit.
De API geeft deze JSON terug
Voor het inladen van bijvoorbeeld date gebruik ik deze code, dit gaat goed
Maar probeer ik op deze manier fcttext (forecast op te halen) krijg ik de foutmelding: Trying to get property of non-object
Hoe doe ik dit wel?
...
Ik maak hier gebruik van de weatherunderground data. Na wat research lukt het me nu JSON data in te laden en te verwerken. Echter loop ik nu vast als de data wat dieper in de JSON lagen zit.
De API geeft deze JSON terug
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
| { "response": { "version":"0.1", "termsofService":"http://www.wunderground.com/weather/api/d/terms.html", "features": { "forecast": 1 } } , "forecast":{ "txt_forecast": { "date":"10:48 AM CET", "forecastday": [ { "period":0, "icon":"partlycloudy", "icon_url":"http://icons.wxug.com/i/c/k/partlycloudy.gif", "title":"woensdag", "fcttext":"Bewolking in de ochtend gevolgd door zon in de middag. Maximaal 36F. Wind uit het OZO van 5 tot 10 mpu.", "fcttext_metric":"Bewolking in de ochtend gevolgd door zon in de middag. Maximaal 2C. Wind uit het OZO van 10 tot 15 km/u.", "pop":"10" } , { "period":1, "icon":"nt_clear", "icon_url":"http://icons.wxug.com/i/c/k/nt_clear.gif", "title":"woensdagnacht", "fcttext":"Overwegend helder. Strenge vorst verwacht. Minimaal 25F. Wind uit het OZO van 5 tot 10 mpu.", "fcttext_metric":"Overwegend helder. Strenge vorst verwacht. Minimaal -4C. Wind uit het OZO van 10 tot 15 km/u.", "pop":"10" } , { "period":2, "icon":"clear", "icon_url":"http://icons.wxug.com/i/c/k/clear.gif", "title":"donderdag", "fcttext":"Overwegend helder. Maximaal 38F. Wind uit het OZO van 10 tot 15 mpu.", "fcttext_metric":"Overwegend helder. Maximaal 3C. Wind uit het OZO van 15 tot 25 km/u.", "pop":"0" } |
Voor het inladen van bijvoorbeeld date gebruik ik deze code, dit gaat goed
code:
1
| $weerdatum = $parsed_json->{'forecast'}->{'txt_forecast'}->{'date'}; |
Maar probeer ik op deze manier fcttext (forecast op te halen) krijg ik de foutmelding: Trying to get property of non-object
code:
1
| $weervandaag = $parsed_json->{'forecast'}->{'txt_forecast'}->{'forecastday'}->{'0'}->{'fcttext'}; |
Hoe doe ik dit wel?
...
Ga niet uit van het haalbare, maar van het denkbare