Parse weather data from Weatherbug in PHP

若如初见. 提交于 2019-12-25 04:39:29

问题


Greetings,

I am trying to parse live weather data from Weatherbug's RSS feed in PHP. I had previously used simplexml_load_string() with NOAA's weather data but I cannot figure out how to output the data that I need from Weatherbug.

Here is the XML for current conditions:

    <rss version="2.0" xmlns:georss="http://www.georss.org/georss">
 <channel>

        <title>Observations from Saint Inigoes,  MD - USA</title>


     <link>http://weather.weatherbug.com/MD/Saint Inigoes-weather.html?ZCode=Z5546&amp;Units=0&amp;stat=KNUI</link>
     <description>Weatherbug, the owner of the world's largest weather network is now providing an API to it's weather data in the form of RSS. This will enable it's enthusiastic users to build their own applications.</description>
     <language>en-us</language>

     <lastBuildDate>Tue, 07 Dec 2010 16:00:00 GMT</lastBuildDate>
     <ttl>60</ttl>
     <aws:weather xmlns:aws="http://www.aws.com/aws"><aws:api version="2.0" /><aws:WebURL>http://weather.weatherbug.com/MD/Saint Inigoes-weather.html?ZCode=Z5546&amp;Units=0&amp;stat=KNUI</aws:WebURL><aws:InputLocationURL>http://weather.weatherbug.com/VA/Heathsville-weather.html?ZCode=Z5546&amp;Units=0</aws:InputLocationURL><aws:station requestedID="" id="KNUI" name="Webster Field, Naval Electronic Syste" city="Saint Inigoes" state=" MD" zipcode="20684" country="USA" latitude="38.1488876342773" longitude="-76.4197235107422" /><aws:current-condition icon="http://deskwx.weatherbug.com/images/Forecast/icons/cond007.gif">Sunny</aws:current-condition><aws:temp units="&amp;deg;F">33.1</aws:temp><aws:rain-today units="&quot;">0</aws:rain-today><aws:wind-speed units="mph">14</aws:wind-speed><aws:wind-direction>WNW</aws:wind-direction><aws:gust-speed units="mph">28</aws:gust-speed><aws:gust-direction>WNW</aws:gust-direction></aws:weather>

     <image>
     <title>Local Weather from WeatherBug</title>
     <width>142</width>
     <height>18</height>
     <link>http://weather.weatherbug.com/MD/Saint Inigoes-weather.html?ZCode=Z5546&amp;Units=0&amp;stat=KNUI</link>
     <url>http://www.weatherbug.com/aws/imagesHmPg0604/img_wxbug_logo_whiteBG.gif</url>

     </image>

           <item>

                        <title>Live Conditions from Saint Inigoes,  MD - USA</title>                        

                     <link>http://weather.weatherbug.com/MD/Saint Inigoes-weather.html?ZCode=Z5546&amp;Units=0&amp;stat=KNUI</link>

                     <pubDate>Tue, 07 Dec 2010 14:53:00 GMT</pubDate>
                     <description><![CDATA[

                             <img src="http://deskwx.weatherbug.com/images/Forecast/icons/cond007.gif" border="0" alt="Current Conditions"/>&nbsp;&nbsp;&nbsp;
                     <b>Sunny</b> <br />

                <b>Temperature:</b> 33.1 &deg;F&nbsp;&nbsp; 
               <br />
                <b>Wind Speed:</b> 14 mph WNW&nbsp;&nbsp;
            <br /> 
                <b>Gusts:</b> 28 mph WNW &nbsp;&nbsp;
                <b>Rain Today:</b> 0 &quot; &nbsp;&nbsp;
               <br />
                     ]]></description>
                      <georss:point>38.1488876342773 -76.4197235107422</georss:point>

                      <guid isPermaLink="false">Tue, 07 Dec 2010 16:00:36 GMT-Station1</guid>


              </item>

 </channel>
    </rss>

The part that I most need is <description> under <item>. Any help would be greatly appreciated!


回答1:


Try this:

$description = (string)$simpleXml->channel->item->description;


来源:https://stackoverflow.com/questions/4378837/parse-weather-data-from-weatherbug-in-php

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!