中国气象的地区编码数据

中国气象有个json数据接口,比如杭州的天气数据是:http://m.weather.com.cn/data/101210101.html,那个101210101就是中国气象给杭州市城区编的地区码,下面讲解一下这个编码规则。

前三位101是国家编码,101就是中国了,21是省编码,21=浙江省,再往下两位就是该省的地级市编码,最后两位是该地级市的县区编码。

101 21 01 01
国    省  市  县

附件里是中国气象的中国地区编码,序列化的数组,到县区,近几年有区域调整的地方,可能没有更新过来。

附上PHP解析代码:

<?php
$area = file_get_contents("area.php");
$area = unserialize($area);
//print_r($area);
$province = array();
foreach($area as $k => $v){
	$province[$k] = $v['level0'];
}
//print_r($province);

// 找江苏省南京市江宁区代号
$pid = array_search('江苏',$province);
if($pid !== false){
	echo $pid;
	$citys = $area[$pid]['level1'];// 江苏所有地级市
	$cityid = array_search('南京',$citys);
	if($cityid !== false){
		echo ','.$cityid;
		// 县区
		$countys = $area[$pid]['level2'][$cityid];
		$countyid = array_search('江宁',$countys);
		if($countyid !== false){
			echo ','.$countyid;
			echo '中国气象id:'.$area[$pid]['level3'][$countyid];
		}else{
			echo 'no countyid';
		}
	}else
		echo 'no cid';
}else
	echo 'no pid';

附件:

area

发表评论