php查詢水質的方法:1、註冊並開啟水質API介面;2、設定申請的appkey;3、請求URL;4、取得介面參數;5、透過「function juhecurl($url, $params=false,$ispost=0){...}”等方式分析處理水質介面資料即可。
本教學操作環境:windows7系統、PHP8.1版、Dell G3電腦。
php怎麼查詢水品質?
1、開通水質API介面:
透過https://www.juhe.cn/docs/api/id/34?s=cpphpcn
註冊及開通
介面說明:此介面支援全國大多數監測站點水品質查詢,包括PH值、溶氧、氨氮、高錳酸鉀指數及總有機碳含量等。有的監測站點沒有總有機碳監測數據。
介面位址:http://web.juhe.cn:8080/environment/water/river
回傳格式:json
要求方式:get
#請求範例:http://web.juhe.cn:8080/environment/water/river?river=流域名稱&key=您申請的APPKEY值
2、基於php的水質查詢api呼叫程式碼實例
程式碼如下:
header('Content-type:text/html;charset=utf-8'); //配置您申请的appkey $appkey = "*********************"; //************1.流域查询水质量************ $url = "http://web.juhe.cn:8080/environment/water/river"; $params = array( "river" => "",//流域名称,查询流域为“长江流域”,则输入“长江流域” "key" => $appkey,//APP Key ); $paramstring = http_build_query($params); $content = juhecurl($url,$paramstring); $result = json_decode($content,true); if($result){ if($result['error_code']=='0'){ print_r($result); }else{ echo $result['error_code'].":".$result['reason']; } }else{ echo "请求失败"; } //************************************************** //************2.监测站点查询水质量************ $url = "http://web.juhe.cn:8080/environment/water/state"; $params = array( "state" => "",//监测站点名称,查询站点为“湖北宜昌南津关”,则输入“湖北宜昌南津关” "key" => $appkey,//APP Key ); $paramstring = http_build_query($params); $content = juhecurl($url,$paramstring); $result = json_decode($content,true); if($result){ if($result['error_code']=='0'){ print_r($result); }else{ echo $result['error_code'].":".$result['reason']; } }else{ echo "请求失败"; } //************************************************** //************3.监测站点列表************ $url = "http://web.juhe.cn:8080/environment/water/stateList"; $params = array( "key" => $appkey,//应用APPKEY ); $paramstring = http_build_query($params); $content = juhecurl($url,$paramstring); $result = json_decode($content,true); if($result){ if($result['error_code']=='0'){ print_r($result); }else{ echo $result['error_code'].":".$result['reason']; } }else{ echo "请求失败"; } //************************************************** /** * 请求接口返回内容 * @param string $url [请求的URL地址] * @param string $params [请求的参数] * @param int $ipost [是否采用POST形式] * @return string */ function juhecurl($url,$params=false,$ispost=0){ $httpInfo = array(); $ch = curl_init(); curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 ); curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' ); curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 ); curl_setopt( $ch, CURLOPT_TIMEOUT , 60); curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true ); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 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) { //echo "cURL Error: " . curl_error($ch); return false; } $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE ); $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) ); curl_close( $ch ); return $response; }
推薦學習:《PHP影片教學》
以上是php怎麼查詢水質量的詳細內容。更多資訊請關注PHP中文網其他相關文章!