天气预报(php+xml)类代码(从雅虎自动更新)
想找个天气代码,又不想用iframe的那种,受人限制。于是从网上找提供天气预报xml的网站。无奈国内的网站太小家子气,一个提供的也没有~后来发现Yahoo提供了这种服务,而且是免费的。跟大家分享一下。
代码不是自己的,国外的那位高人做的挺好,我就不做无用功了,直接拿来。
php类包下载:地址1(推荐)
教程页面:官方教程
效果在weather.test.php页中,使用缓存存储数据,默认1小时更新一次。
注意:如果使用的温度单位是°C,在代码中,要将$weather_chile = new weather("CHXX8888", 3600, "C");中的大写C改为小写c,作者的注释好像错了。
附上我写的两个变量,估计国内都会用到:
$wtocn=array(
'AM Clouds / PM Sun'=>'上午有云/下午后晴 ',
'AM Showers'=>'上午阵雨 ',
'AM Snow Showers'=>'上午阵雪 ',
'AM Thunderstorms'=>'上午雷暴雨 ',
'Clear'=>'晴朗 ',
'Cloudy'=>'多云 ',
'Cloudy / Wind'=>'阴时有风 ',
'Clouds Early / Clearing Late'=>'早多云/晚转晴 ',
'Drifting Snow'=>'飘雪 ',
'Drizzle'=>'毛毛雨 ',
'Dust'=>'灰尘 ',
'Fair'=>'晴 ',
'Few Showers'=>'短暂阵雨 ',
'Few Snow Showers'=>'短暂阵雪 ',
'Few Snow Showers / Wind'=>'短暂阵雪时有风 ',
'Fog'=>'雾 ',
'Haze'=>'薄雾 ',
'Hail'=>'冰雹 ',
'Heavy Rain'=>'大雨 ',
'Heavy Rain Icy'=>'大冰雨 ',
'Heavy Snow'=>'大雪 ',
'Heavy Thunderstorms'=>'强烈雷雨 ',
'Isolated Thunderstorms'=>'局部雷雨 ',
'Light Drizzle'=>'微雨 ',
'Light Rain'=>'小雨 ',
'Light Rain Shower'=>'小阵雨 ',
'Light Rain Shower and Windy'=>'小阵雨带风 ',
'Light Rain with Thunder'=>'小雨有雷声 ',
'Light Snow'=>'小雪 ',
'Light Snow Fall'=>'小降雪 ',
'Light Snow Grains'=>'小粒雪 ',
'Light Snow Shower'=>'小阵雪 ',
'Lightening'=>'雷电 ',
'Mist'=>'薄雾 ',
'Mostly Clear'=>'大部晴朗 ',
'Mostly Cloudy'=>'大部多云 ',
'Mostly Cloudy/ Windy'=>'多云时阴有风 ',
'Mostly Sunny'=>'晴时多云 ',
'Partly Cloudy'=>'局部多云 ',
'Partly Cloudy/ Windy'=>'多云时有风 ',
'PM Rain / Wind'=>'下午小雨时有风 ',
'PM Light Rain'=>'下午小雨 ',
'PM Showers'=>'下午阵雨 ',
'PM Snow Showers'=>'下午阵雪 ',
'PM Thunderstorms'=>'下午雷雨 ',
'Rain'=>'雨 ',
'Rain Shower'=>'阵雨 ',
'Rain Shower/ Windy'=>'阵雨/有风 ',
'Rain / Snow Showers'=>'雨或阵雪 ',
'Rain / Snow Showers Early'=>'下雨/早间阵雪 ',
'Rain / Wind'=>'雨时有风 ',
'Rain and Snow'=>'雨夹雪 ',
'Scattered Showers'=>'零星阵雨 ',
'Scattered Showers / Wind'=>'零星阵雨时有风 ',
'Scattered Snow Showers'=>'零星阵雪 ',
'Scattered Snow Showers / Wind'=>'零星阵雪时有风 ',
'Scattered Strong Storms'=>'零星强烈暴风雨 ',
'Scattered Thunderstorms'=>'零星雷雨 ',
'Showers'=>'阵雨 ',
'Showers Early'=>'早有阵雨 ',
'Showers Late'=>'晚有阵雨 ',
'Showers / Wind'=>'阵雨时有风 ',
'Showers in the Vicinity'=>'周围有阵雨 ',
'Smoke'=>'烟雾 ',
'Snow'=>'雪 ',
'Snow / Rain Icy Mix'=>'冰雨夹雪 ',
'Snow and Fog'=>'雾夹雪 ',
'Snow Shower'=>'阵雪 ',
'Snowflakes'=>'雪花 ',
'Sunny'=>'晴朗 ',
'Sunny / Wind'=>'晴时有风 ',
'Sunny Day'=>'晴天 ',
'Thunder'=>'雷鸣 ',
'Thunder in the Vicinity'=>'周围有雷雨 ',
'Thunderstorms'=>'雷雨 ',
'Thunderstorms Early'=>'早有持续雷雨 ',
'Thunderstorms Late'=>'晚有持续雷雨 ',
'Windy'=>'有风 ',
'Windy / Snowy'=>'有风/有雪 ',
'Windy Rain'=>'刮风下雨 ',
'Wintry Mix'=>'雨雪混合'
);
$wtime=date("m-d",strtotime($weather_chile->fore_day1_date));

国内情况确实特殊,国内遵循国际开源协议软件的有几个
在你日志上开辟一块 做个例子看看
用writer 可以上传js
哦 博客的引用2 二次引用有问题! js里的函数读取不了整个《P》的内容吗!
@Qing 自己没有作品的时候觉得版权没用,自己做了东西就觉得版权的价值了,唉,国内没办法,长久形成的恶习
@houkai 详见演示地址:http://www.voegeli.li/development/class.yahoo.weather/weather.test.php
不会用writer传js啊?咋整的?二次引用是不是转义的问题?
我知道原因了 第二次引用 就成了《p id=1》123《p id=2》456/p》789《/p》
var quoteMsg=document.getElementById(id).innerHTML;(id=1)
函数 就傻了!! 取成123了
写错 去成 123456了
@houkai 那样的话标签都没了……怪不得……
插入单页比较合适,如果放在首页影响速度啊
我重新改了回复 和引用 这次应该没问题了
你怎么还不加表情呀 我都不喜欢了:)
打错字了 最后一句是 我都不习惯了 呵呵
@houkai 正在做一个页面,这几天每天都在写css,完成后一定要加上,嘿嘿,好功能我可一定要拿过来滴:O
先记下来 以后很有可能会用到