欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

thinkphp如何獲取客戶端IP

 更新時間:2015年11月03日 14:42:01   投稿:lijiao  
這篇文章主要介紹了thinkphp如何正確獲取客戶端IP,除了使用內置get_client_ip函數,還有沒有其他方法?請閱讀下文揭曉答案。

thinkphp框架中系統(tǒng)內置了get_client_ip方法用于獲取客戶端的IP地址,使用示例:
$ip = get_client_ip();
除了thinkphp內置get_client_ip函數外,也可使用下面函數獲取客戶端IP地址。
$type表示返回類型 0 返回IP地址, 1 返回IPV4地址數字
分享代碼如下

function get_client_ip($type = 0) {
  $type    = $type ? 1 : 0;
  static $ip =  NULL;
  if ($ip !== NULL) return $ip[$type];
  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地址合法驗證
  $long = ip2long($ip);
  $ip  = $long ? array($ip, $long) : array('0.0.0.0', 0);
  return $ip[$type];

希望本文對大家深入學習php程序設計有所幫助。

相關文章

  • Php Mssql操作簡單封裝支持存儲過程

    Php Mssql操作簡單封裝支持存儲過程

    沒有啥太多的功能,就是簡單封裝,也沒有緩存,平時用ezSQL,但是ezSQL不支持存儲過程,所以這里封裝了存儲過程,因為自己的需要,只是做一個標記在這里而已。
    2009-12-12
  • PHP終止腳本運行三種實現方法詳解

    PHP終止腳本運行三種實現方法詳解

    這篇文章主要介紹了PHP終止腳本運行三種實現方法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • PHP簡單開啟curl的方法(測試可行)

    PHP簡單開啟curl的方法(測試可行)

    這篇文章主要介紹了PHP簡單開啟curl的方法,較為詳細的講述了PHP開啟curl函數庫的具體步驟與相關注意事項,需要的朋友可以參考下
    2016-01-01
  • 用php來改寫404錯誤頁讓你的頁面更友好

    用php來改寫404錯誤頁讓你的頁面更友好

    404錯誤,很多人都知道,如果要訪問的url不存在的時候就讀取顯示這個頁面;以往在處理404寫幾行字,有心人對其稍加美化,首先我來說明一下我的404究竟都能幫我做哪些事情以及PHP如何來改寫你的404錯誤頁
    2013-01-01
  • php 禁止頁面緩存輸出

    php 禁止頁面緩存輸出

    主要設計思想就是讓它在過去就“失效",防止重復提交等返回操作。
    2009-01-01
  • 關于php循環(huán)跳出的問題

    關于php循環(huán)跳出的問題

    本篇文章是對php中循環(huán)跳出的問題進行了詳細的分析介紹,需要的朋友參考下
    2013-07-07
  • PHP令牌 Token改進版

    PHP令牌 Token改進版

    那個版本中,存在一個小問題,因為要做可逆加密,而加密出來的字符是不可顯示字符+亂碼,所以我用了 base64對其進行了處理,這樣一來,就不會有亂碼和不可顯示字符了。
    2008-07-07
  • php 生成餅圖 三維餅圖

    php 生成餅圖 三維餅圖

    php 生成餅圖 三維餅圖實現代碼,大家可以測試下。
    2009-09-09
  • [PHP]實用函數10

    [PHP]實用函數10

    [PHP]實用函數10...
    2007-11-11
  • win2003服務器使用WPS的COM組件的一些問題解決方法

    win2003服務器使用WPS的COM組件的一些問題解決方法

    項目中使用了新功能,gump同學研究出來的使用WPS的COM組件用PHP實現將doc等office格式轉換成pdf
    2012-01-01

最新評論