當前位置:首頁 » 編程語言 » php取外網ip

php取外網ip

發布時間: 2023-01-30 08:06:03

1. 在項目中獲取外網IP以及IP所在地等信息

介面地址: http://ip.taobao.com/service/getIpInfo.php
傳遞參數: ip:要查詢的IP地址
參數傳遞方式: GET/POST
返回類型: json
返回值:

備註:本介面來自 淘寶IP地址庫

這個玩法很多,官網介紹也很詳細☞ 傳送門

介面地址: http://pv.sohu.com/cityjson
傳遞參數: ie:編碼(默認為GBK)
參數傳遞方式: GET
返回類型:js
返回值:
cip:本機IP地址
cid:城市編號
cname:城市名稱
請求示例: Request URL: http://pv.sohu.com/cityjson?ie=utf-8
返回示例: { "cip": "115.159.152.220", "cid": "410100", "cname": "廣州市"}

介面地址: http://int.dpool.sina.com.cn/iplookup/iplookup.php
傳遞參數:
format:數據返回格式
ip:欲查詢的IP(空則查詢本機)
參數傳遞方式: GET
返回類型: js/json
返回值:
country:國名
province:省份
city:城市名

2. PHP如何獲取伺服器外網IP

1.關於外網IP變更問題,如果你手頭上有 IP資源,建議綁定。就是你申請的靜態IP。
2.如果自己沒有靜態IP,那麼如果你有域名,可以通過 花生殼這些軟體,綁定自己的伺服器。這樣就算IP怎樣變化,直接訪問域名就可以了。
2.1.花生殼帶有一些二級域名的,功能也差不多。
-----------------------------------

另外,可以寫一個功能cURL,讓你的伺服器定期訪問一個站點(私有站點,要許可權進入),這個站點你可以獲取訪問者的IP。

3. 請問一下php的pdo獲取公網ip關掉電腦又開電腦為什麼ip又不同了

你沒有告知你的伺服器網路狀況。
如果是在正規服務商(比如騰訊雲,阿里雲等)購買的(虛擬)伺服器,一般會有綁定的公網IP,關閉伺服器後再打開是相同的。
如果你的伺服器是在自己家(或者宿舍)的內部網路,那麼對應的公網ip就要看提供網路的運營商了,大部分運營商提供的網路每次撥號(或者登錄)後獲得的公網ip是不同的,甚至有時使用ip網站查詢到你電腦的公網ip地址也無法鏈接到內網你的伺服器上。這種情況下具體解決方案你就要研究內網的路由設置了。

4. php如何獲得訪問區域網內的伺服器的用戶的真實ip,即外網ip。

/**
* 獲取客戶端IP地址
*/
static public function getClientIP() {
static $ip = NULL;
if ( $ip !== NULL )
return $ip;
if ( isset( $_SERVER['HTTP_X_FORWARDED_FOR'] ) ) {
$arr = explode( ',', $_SERVER['HTTP_X_FORWARDED_FOR'] );
$pos = array_search( 'unknown', $arr );
if ( false !== $pos )
unset( $arr[$pos] );
$ip = trim( $arr[0] );
} elseif ( isset( $_SERVER['HTTP_CLIENT_IP'] ) ) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
} elseif ( isset( $_SERVER['REMOTE_ADDR'] ) ) {
$ip = $_SERVER['REMOTE_ADDR'];
}
// IP地址合法驗證
$ip = ( false !== ip2long( $ip ) ) ? $ip : '';
return $ip;
}

5. PHP如何獲取外網IP地址,類似於百度查詢到的IP,網上的方法,查詢到的都是區域網(內網)的IP,

發一個函數給你.

/**
*獲取客戶端IP地址
*@paraminteger$type返回類型0返回IP地址1返回IPV4地址數字
*@paramboolean$adv是否進行高級模式獲取(有可能被偽裝)
*@returnmixed
*/
functionget_client_ip($type=0,$adv=false){
$type=$type?1:0;
static$ip=NULL;
if($ip!==NULL)return$ip[$type];
if($adv){
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])){
$arr=explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
$pos=array_search('unknown',$arr);
if(false!==$pos)unset($arr[$pos]);
$ip=trim($arr[0]);
}elseif(isset($_SERVER['HTTP_CLIENT_IP'])){
$ip=$_SERVER['HTTP_CLIENT_IP'];
}elseif(isset($_SERVER['REMOTE_ADDR'])){
$ip=$_SERVER['REMOTE_ADDR'];
}
}elseif(isset($_SERVER['REMOTE_ADDR'])){
$ip=$_SERVER['REMOTE_ADDR'];
}
//IP地址合法驗證
$long=sprintf("%u",ip2long($ip));
$ip=$long?array($ip,$long):array('0.0.0.0',0);
return$ip[$type];
}

如果是本地測試的話,獲取到的是127.0.0.1

6. PHP獲取客戶端外網ip代碼

function get_real_ip()
{
$ip=FALSE;
//客戶端IP 或 NONE
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
//多重代理伺服器下的客戶端真實IP地址(可能偽造),如果沒有使用代理,此欄位為空
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10│172.16│192.168).", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
//客戶端IP 或 (最後一個)代理伺服器 IP
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}

7. php到底怎麼獲取IP地址,為什麼三種方法獲取的IP都不一樣

你電腦接了路由器,127.0.0.1是本地回環地址,網上測試那個是公網IP地址,本機做伺服器,伺服器地址就是127.0.0.1

8. php怎麼獲取公網ip和內網ip

$ip=$_SERVER["REMOTE_ADDR"];
SetCookie("ip","$ip");
$ip==isset($_COOKIE['ip']);
我這個得到的是外網IP

$ip=$_SERVER["REMOTE_ADDR"];
if(in_array(strtok($i, '.'), array('10', '127', '168', '192')))
echo '內網';

內網A類網段只開列了常見的部分,其餘的你自己增減

9. php獲取客戶端外網ip

//試試這個

functiongetip(){
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$cip=$_SERVER["HTTP_CLIENT_IP"];
}
elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){
$cip=$_SERVER["HTTP_X_FORWARDED_FOR"];
}
elseif(!empty($_SERVER["REMOTE_ADDR"])){
$cip=$_SERVER["REMOTE_ADDR"];
}
else{
$cip='';
}
preg_match("/[d.]{7,15}/",$cip,$cips);
$cip=isset($cips[0])?$cips[0]:'unknown';
unset($cips);
return$cip;
}

10. 使用php怎麼顯示外網ip,要把php文件放到哪個路徑下啊

獲取客戶端(即訪問用戶)的IP
function getip() {
$unknown = 'unknown';
if ( isset($_SERVER['HTTP_X_FORWARDED_FOR'])
&& $_SERVER['HTTP_X_FORWARDED_FOR']
&& strcasecmp($_SERVER['HTTP_X_FORWARDED_FOR'],
$unknown) ) {
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} elseif ( isset($_SERVER['REMOTE_ADDR'])
&& $_SERVER['REMOTE_ADDR'] &&
strcasecmp($_SERVER['REMOTE_ADDR'], $unknown) ) {
$ip = $_SERVER['REMOTE_ADDR'];
}

在要顯示的頁面的位置echo getip();
獲取客戶端IP的方法有很多,如果你只是要顯示IP,容易些。如果你還要根據IP獲取所在城市(例如:112.221.108.xxx來自上海xx)之類的。那就需要另外再處理。
自己載入IP庫不現實,不準還難得更新。所以一般都用網上的介面,taobao的比較穩定

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:582
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:876
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:571
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:757
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:673
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1000
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:244
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:103
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:795
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:701