{ "reason": "successed", "result": { "list": [{ "PostNumber": "215001", "Province": "江苏省", "City": "苏州市", "District": "平江区", "Address": "廖家巷新光里" }, { "PostNumber": "215001", "Province": "江苏省", "City": "苏州市", "District": "平江区", "Address": "龙兴桥顺德里" } ], "totalcount": 352, "totalpage": 176, "currentpage": 1, "pagesize": "2" }, "error_code": 0 }
<?php /** * Created by PhpStorm. * User: FZS * Time: 2019/3/15 17:50 */ //---------------------------------- // 聚合 邮编查询地名 调用类 //---------------------------------- class freeApi{ private $apiKey = false; //聚合appkey private $apiUrl = 'http://v.juhe.cn/postcode/query'; public function __construct($apikey){ $this->apiKey = $apikey; } /** * 将JSON内容转为数据,并返回 * @param string $content [内容] * @return array */ public function returnArray($content){ return json_decode($content,true); } /** * 获取 邮编查询地名 结果 * @return array */ public function getResult(){ $params = [ "postcode" => "",//邮编,如:215001 "key" => $this->apiKey,//应用APPKEY(应用详细页查询) "page" => "",//页数,默认1 "pagesize" => "",//每页返回,默认:20,最大不超过50 "dtype" => "",//返回数据的格式,xml或json,默认json ]; $params = http_build_query($params); return $this->returnArray($this->freeApiCurl($this->apiUrl,$params,1)); } /** * 请求接口返回内容 * @param string $url [请求的URL地址] * @param string $params [请求的参数] * @param int $ipost [是否采用POST形式] * @return string */ public function freeApiCurl($url,$params=false,$ispost=0){ $ch = curl_init(); curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 ); curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 ); curl_setopt( $ch, CURLOPT_USERAGENT , 'chuanshuoapi' ); curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 ); curl_setopt( $ch, CURLOPT_TIMEOUT , 60); curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true ); if( $ispost ) { curl_setopt( $ch , CURLOPT_POST , true ); curl_setopt( $ch , CURLOPT_POSTFIELDS , $params ); curl_setopt( $ch , CURLOPT_URL , $url ); } else { if($params){ curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params ); }else{ curl_setopt( $ch , CURLOPT_URL , $url); } } $response = curl_exec( $ch ); if ($response === FALSE) { return false; } curl_close( $ch ); return $response; } }