今天处理excel表格时,发现收件人地址是一列,也就是省市区并没有单独分开存放,这样程序处理起来很麻烦。比如我需要把 河南省郑州市金水区文化路科技市场 处理成数组的形式,类似于:
Array | |
( | |
[country] => 中国 | |
[province] => 河南省 | |
[city] => 郑州市 | |
[district] => 金水区 | |
[adcode] => 410105 | |
[addressxxdz] => 文化路科技市场 | |
[fullName] => | |
[mobile] => | |
) |
这种形式。
今天发现一个好用的接口
<?php
getaddressarr("河南省郑州市金水区文化路科技市场");
function getaddressarr($add){
$url="http://qndyapi.timestart.net/addressdec/apitest.php?address=".$add;
$json=get_url_contents($url);
$arr=json_decode($json, true);
echo "<pre>";
print_r($arr);
}
function get_url_contents($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_URL, $url);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
?>
直接返回解析好的数据,更重要的是能地址自动纠错。
比如我输入:河南省郑州市高新技术开发区文化路科技市场
因为 文化路科技市场 在郑州的金水区,他会自动把区纠正到金水区,太强大的。