文章介紹利用相關api接口實現根據客戶端IP地址獲得所屬城市地區一個php實例,下面我們一起來看看。
今天分享一個PHP根據客戶端IP地址獲得所屬地的小程序,以前寫的,已經用了很久了,感覺這個接口還是停穩定的。雖然現在網上也有很多類似的,但是我覺得我這個還是很不錯的,核心代碼只用3行就能實現。雖然功能不是很強大,但是我們平時算是夠用的。以下是代碼:
代碼如下 復制代碼
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>通過IP獲取歸屬地</title>
</head>
圖1 : 返回數據
圖2 : 查詢成功
如果喜歡的話,可以試試,幾行代碼就能搞定,我覺得還是挺實用的!!
本文章來源於 代潇瑞博客 原文地址:http://www.daixiaorui.com/read/3.html
<body>
<form action="" method="post">
<p>請輸入ip地址:<input type="text" name="ip" /></p>
<p><input type="submit" value="查詢" /></p>
</form>
<?php
//獲取ip地址
//$ip = $_SERVER['REMOTE_ADDR']; //自動獲取客戶端的IP
//ip對應的地區
if(!empty($_POST['ip'])){
$ip = $_POST['ip'];
//接口地址,這樣返回的是一個xml結果集,如圖1;
$str = file_get_contents("http://www.yodao.com/smartresult-xml/search.s?type=ip&q=".$ip);
//這裡要得到裡面的地址信息,提取xml方法有很多,我用的是正則。
preg_match_all( "/<location>(.*?)</location>/",$str,$addr1);
//最終結果,如圖2;
$addr = $ip."=>".$addr1[1][0];
echo $addr;
}
?>
</body>
</html>
圖1 : 返回數據
圖2 : 查詢成功
如果喜歡的話,可以試試,幾行代碼就能搞定,我覺得還是挺實用的!!