php获取天气组件,php获取中国天气,中国天气插件说明,根据IP获取天气情况

PHP » 编程开发 » php获取中国天气,中国天气插件说明,根据IP获取天气情况

php获取中国天气,中国天气插件说明,根据IP获取天气情况

今天客户端需要获取天气情况,于是查询了一下!

看一下要求:

1、根据客户IP自动获取天气情况;

2、根据客户的资料地区获取天气情况.

现在我们要分析一下我们要解决的问题:

1、自动获取IP和地区名称;

2、通过百度查询所在地区在中国天气网上的编号;

3、获取地区的天气;

4、分析返回的数据。

[php]

/**

* 天气

* 获取IP、城市

* 百度查找天气网站的ID

**/

public function getWeather(){

$ip = get_client_ip();//获取IP

$getString = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?ip=".$ip);//获取地区信息

$city_str = explode("", $getString);

//dump($city);

$city = iconv("GB2312","utf-8",$city_str[5]);

$baidu = file_get_contents("http://www.baidu.com/s?wd=".$city."天气");//获取地区在中国天气网的编号

preg_match_all("/.com.cn/weather/(.*).shtml#7d/i", $baidu, $matches);

$num = substr($matches[1][0],0,9);

echo file_get_contents("http://m.weather.com.cn/data/".$num.".html");//返回json数据

}

[/php]

[js]

{

"weatherinfo":{

"city":"福州",

"city_en":"fuzhou",

"date_y":"2012年5月14日",

"date":"",

"week":"星期一",

"fchh":"08",

"cityid":"101230101",

"temp1":"29℃~23℃","temp2":"26℃~20℃","temp3":"24℃~20℃","temp4":"25℃~20℃","temp5":"24℃~21℃","temp6":"25℃~22℃",

"tempF1":"84.2℉~73.4℉","tempF2":"78.8℉~68℉","tempF3":"75.2℉~68℉","tempF4":"77℉~68℉","tempF5":"75.2℉~69.8℉","tempF6":"77℉~71.6℉",

"weather1":"阵雨转中雨","weather2":"中雨转小雨","weather3":"小雨","weather4":"小雨","weather5":"小雨转阵雨","weather6":"阵雨转小雨",

"img1":"3","img2":"8","img3":"8","img4":"7","img5":"7","img6":"99","img7":"7","img8":"99","img9":"7","img10":"3","img11":"3","img12":"7","img_single":"3",

"img_title1":"阵雨","img_title2":"中雨","img_title3":"中雨","img_title4":"小雨","img_title5":"小雨","img_title6":"小雨","img_title7":"小雨","img_title8":"小雨","img_title9":"小雨","img_title10":"阵雨","img_title11":"阵雨","img_title12":"小雨","img_title_single":"阵雨",

"wind1":"微风","wind2":"微风","wind3":"微风","wind4":"微风","wind5":"微风","wind6":"微风","fx1":"微风","fx2":"微风",

"fl1":"小于3级","fl2":"小于3级","fl3":"小于3级","fl4":"小于3级","fl5":"小于3级","fl6":"小于3级",

"index":"热",

"index_d":"天气较热,建议着短裙、短裤、短套装、T恤等夏季服装。年老体弱者宜着长袖衬衫和单裤。",

"index48":"暖","index48_d":"较凉爽,建议着长袖衬衫加单裤等春秋过渡装。年老体弱者宜着针织长袖衬衫、马甲和长裤。",

"index_uv":"弱","index48_uv":"最弱",

"index_xc":"不宜",

"index_tr":"适宜",、

"index_co":"较不舒适",

"st1":"27","st2":"21","st3":"24","st4":"18","st5":"22","st6":"18",

"index_cl":"较不宜",

"index_ls":"不太适宜",

"index_ag":"不易发"

}

}

[/js]

分析一下:

图片地址:http://m.weather.com.cn/img/b+图片代码+.gif

图片99表示“晴”

中国国家气象局天气预报接口总共提供了三个:

http://www.weather.com.cn/data/sk/101010100.html

http://www.weather.com.cn/data/cityinfo/101010100.html

http://m.weather.com.cn/data/101010100.html

该日志由 php 于2013年04月27日发表在 编程开发 分类下,

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值