程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php實現IP地址轉換為整型數字實例

php實現IP地址轉換為整型數字實例

編輯:關於PHP編程

IP地址轉換在整型數據然後保存到數據庫中,這是一種常用的做法,我們轉換IP地算法是intIP = 256*256*256*w + 256*256*x + 256*y + z即可,下面來給各位同學介紹具體實例。

【轉換原理】:假設IP為:w.x.y.z,則IP地址轉為整型數字的計算公式為:intIP = 256*256*256*w + 256*256*x + 256*y + z

【PHP的互轉】:PHP的轉換方式比較簡單,它內置了兩個函數

int ip2long ( string $ip_address ) //ip轉換成整型數值
string long2ip ( string $proper_address ) // 整型數值轉換成ip【MySQL的互轉】:相對於MsSQL來說MySQL的轉換方式比較簡單,它和PHP一樣也內置了兩個函數

IP 轉為整型:

select INET_ATON (IP地址)整型數值轉換成IP

select INET_NTOA ( IP的整型數值 )


一個實例

1.手工自己的實現方法

 代碼如下 復制代碼


 function ip2number($ip)
      {

          $t = explode('.', $ip);
          $x = 0;
          for ($i = 0; $i < 4; $i++)

          {
              $x = $x * 256 + $t[$i];

          }
          return $x;

      }

function number2ip($num)

      {
          $t = $num;
          $a = array();

          for ($i = 0; $i < 4; $i++)
          {
              $x = $t % 256;
              if($x < 0) $x += 256;
              array_unshift($a, $x);
              $t = intval($t / 256);
          }
          return implode('.', $a);
 }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved