PHP調(diào)用API接口的方法
php實(shí)現(xiàn)API接口的代碼,能過百度的API接口實(shí)現(xiàn)用獲取城市名的功能,是學(xué)習(xí)PHP API開發(fā)的不錯(cuò)實(shí)例.可以研究一下,這種方式可以結(jié)合網(wǎng)站,微信,手機(jī)都可以調(diào)用,不用再寫原生PHP程序再去訪問后端數(shù)據(jù)庫
/*百度API 通過IP獲取相應(yīng)的城市*/
$ip=$_SERVER["HTTP_CLIENT_IP"]);
$link='http://api.map.baidu.com/location/ip?ak=ZeDp7DTFVGS5fXiKhXRoTLl7&ip='.$ip;
$url=postget($link);
$ip_data = json_decode($url); //json格式解碼
$data=(array)$ip_data; //轉(zhuǎn)換為數(shù)組供程序調(diào)用
if($data['code']){
$city='未知';
}else{
$info=$data['content']->address_detail;
$city=$data['content']->address_detail->city;
}
/*
***用Curl的方式請求接口,返回JSON數(shù)據(jù)
***@url:接口地址
***@params:傳遞的參數(shù)
***@ispost:是否以POST提交,默認(rèn)GET
*/
function postget($url,$params=false,$ispost=0){
$httpInfo = array();
$ch = curl_init();
curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_0 );
curl_setopt( $ch, CURLOPT_USERAGENT , 'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22' );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 30 );
curl_setopt( $ch, CURLOPT_TIMEOUT , 30);
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) {
#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;
}
推薦文章
2025-01-18
2024-11-28
2024-11-09
2024-10-25
2024-06-25
2024-01-04
2023-11-06
2023-10-30
2023-10-13
2023-10-10
穩(wěn)定
產(chǎn)品高可用性高并發(fā)貼心
項(xiàng)目群及時(shí)溝通專業(yè)
產(chǎn)品經(jīng)理1v1支持快速
MVP模式小步快跑承諾
我們選擇聲譽(yù)堅(jiān)持
10年專注高端品質(zhì)開發(fā)聯(lián)系我們
友情鏈接: