來看看代碼:
復制代碼 代碼如下:
echo "(1)浏覽當前頁面的用戶的 IP 地址為:";
echo $_SERVER['REMOTE_ADDR'];
echo "<br />";
echo "(2)浏覽當前頁面的用戶的 IP 地址為:";
echo getenv('REMOTE_ADDR');
echo "<br />";
echo "主機 www.baidu.com 的 IP 地址為:";
echo gethostbyname(<A href="http://www.baidu.com">www.baidu.com</A>);
它的輸出結果為:
(1)浏覽當前頁面的用戶的 IP 地址為:127.0.0.1
(2)浏覽當前頁面的用戶的 IP 地址為:127.0.0.1
主機 www.baidu.com 的 IP 地址為:61.135.169.105
關於獲取客戶端的 IP 地址,有倆方法:
第一個是使用:
?$_SERVER['REMOTE_ADDR']
它正在浏覽當前頁面用戶的 IP 地址,這裡的輸出結果為 127.0.0.1,因為這是在本地測試,輸出的是我本地的環路地址。
第倆個是使用:
?getenv('REMOTE_ADDR')
這裡使用了函數 getenv : Gets the value of an environment variable(得到各種環境變量的值),返回值:Returns the value of the environment variable varname, or FALSE on an error(失敗的話返回 FALSE).
關於獲取服務器端的 IP 地址:
?gethostbyname(<A href="http://www.baidu.com">www.baidu.com</A>)
這裡使用了函數 gethostbyname : Get the IP address corresponding to a given Internet host name(通過給定的一個主機名字而得到它的 IP 地址),返回值:Returns the IP address of the Internet host specified by hostname or a string containing the unmodified hostname on failure(失敗的話返回原樣的輸入字符主機名).
注意這裡的最後一句,也就是說,如果失敗的話,它會將原樣輸出,例如:
?echo "無效主機 iwilldown 的 IP 地址為:";
echo gethostbyname("iwilldown");
輸出:
?無效主機 iwilldown 的 IP 地址為:iwilldown
當然,這個可不是 IP 地址….