接漏PHP的ip2long有bug,請慎用

2021-05-06 18:04:31 字數 786 閱讀 2818

先看看下邊這段php**。這段使用ip2long函式,對同乙個ip進行轉換。當然,也有人認為58.99.011.1和058.99.011.1算不上合法的

ip,那就return,此文對你沒有幫助。

為什麼要使用帶前導零的ip:為了在資料庫中查詢,這個可以在ip庫中定位到ip所對應的位置資訊。雖然沒有整型的ip查詢效率高,但畢竟直觀啊。

view plaincopy to clipboardprint?

<?php 

echo ip2long('58.99.11.1'),"

";   //輸出是 979569409 

echo ip2long('58.99.011.1'),"

";  //輸出是 979568897 

echo ip2long('058.99.11.1'),"

";  //輸出是空 

?> 

<?php

echo ip2long('58.99.11.1'),"

";   //輸出是 979569409

echo ip2long('58.99.011.1'),"

";  //輸出是 979568897

echo ip2long('058.99.11.1'),"

";  //輸出是空

?>

在php 4.x,5.x中, 有前導零的ip轉換的結果都不正確。

解決辦法,使用寫自己的函式:

view plaincopy to clipboardprint?

function myip2long($ip)

CentOS 設定靜態IP2

centos 6.3設定靜態ip教程 區域網裡有臺安裝有centos6.3的電腦,掉電或重啟,它的ip會被dhcp重新分配,如果要遠端控制這台電腦,不得不去開啟顯示器去檢視它的新ip,這樣太麻煩了。於是需要將這台電腦的ip設定成靜態的。1 找到 etc sysconfig network scrip...

關於IP3空間與IP2空間的一點理解

計算機視覺中的多檢視幾何中說到 在ip3 0,0,0 t中的向量等價類的集合組成射影空間ip2 以點向量來理解,ip3中的每個向量對應著ip2中的乙個點,其中 0,0,0 不與任何直線對應,被排除在外。此外有兩個特殊情況 1.ip3中的過原點的直線都被分為兩段 2.ip3中的z 0的平面對應ip2中...

docker配置獨立橋接IP的方法

使用埠對映 nat 的方式存在乙個弊端,當多個容器都需要使用某個埠時或者host主機埠與容器埠衝突時 例如,host主機搭建了80的服務,兩個容器也都搭建了80的服務,那個只有1個服務可以使用本機的80埠,其他服務都要對映為其他埠 為容器配置獨立的橋接ip就完美的解決了這個問題。以下為配置步驟 1 ...