2010-04-06 110 views
1

我其實是通過問題1636644去的方式..並得到了與此不同的獲取IP地址

" The getenv() function access to any environment variable to get the related value! " 

也搞不清楚..

" It would probably be better to use $_SERVER['REMOTE_ADDR']; to prevent incompatibilities between servers. " 

什麼樣的兼容性問題能這樣??

最後,它說$ _SERVER是一個有很多元素的數組,但我在那裏只找到IP地址..這個數組是否也存儲了其他東西?

道歉所有這些問題裝在一個..這是bcoz這些都與..

回答

1

看看有什麼$_SERVER含有,只是做:

echo "<pre>"; 
print_r($_SERVER); 
echo "</pre>"; 

預標記只是使輸出在瀏覽器中呈現的。

看到所有服務器的設置(和噸以上)環境變量,使一個腳本,只是有:

<?php 

phpinfo(); 

?> 

它會朝下方上市,爲PHP Variables

環境變量的差異可以基於HTTP服務器(apache vs IIS)和其他因素,例如通過SSL提供頁面。

+0

非常感謝[ 'ROMOTE_ADDR'],ROMOTE_ADDR,的gethostbyname()..我想這就是我一直在尋找的.. – Sachindra 2010-04-06 11:29:37

3

函數「GETENV」如果您的服務器API是ASAPI(IIS)不起作用。

source

另外,請參閱this link什麼可以被包含在$ _SERVER變量中。

0

我認爲這些不兼容性是因爲Web服務器管理其環境變量的方式不同。

$ _SERVER變量本身管理這些差異。

回答你的最後一個問題,您可以訪問$ _ SERVER數組變量是這樣的:

$_SERVER['SCRIPT_NAME'] 
$_SERVER['REQUEST_URI'] 

等等......你可以看到這裏的參考:http://www.php.net/manual/en/reserved.variables.server.php

1

$ _ SERVER可能包含大量信息;你可能感興趣的:

  • HTTP_CLIENT_IP
  • HTTP_FORWARDED
  • HTTP_X_FORWARDED_FOR
  • REMOTE_ADDR
0

創建包含以下看到的$ _SERVER內容與主機沿着PHP頁面有關您的服務器的其他有用信息

<?php phpinfo(); ?> 
0

$ _ SERVER使用此3種方式u能找到IP地址