Heim > Artikel > Backend-Entwicklung > Was ist der Unterschied zwischen getenv und server in PHP?
Der Unterschied zwischen getenv und server in PHP: 1. getenv kann die Systemumgebungsvariablen abrufen, die Syntax ist „string getenv(string varname)“ und „$_SERVER“ ist das superglobale Variablenarray des Servers 2. getenv tut es unterstützt IIS nicht. PHP, das im isapi-Modus ausgeführt wird, wird von „$_SERVER“ unterstützt.
Die Betriebsumgebung dieses Artikels: Windows 10-System, PHP-Version 8.1, Dell G3-Computer
Der Unterschied in der Verwendung zwischen getenv() und $_SERVER in PHP:
getenv ruft die Systemumgebungsvariablen ab, das Format der Umgebungsvariablen ist Name=Wert.
Syntax:
string getenv(string varname);
Rückgabewert: String Funktionstyp: PHP-Systemfunktion
Inhaltsbeschreibung
Wenn die Umgebungsvariable varname korrekt erhalten wird, wird der Variablenwert zurückgegeben, andernfalls wird false zurückgegeben.
Das folgende Beispiel kann die URL des Computers abrufen, auf dem sich der Browser des Benutzers befindet
$ip = getenv(“REMOTE_ADDR”); ?>
$_SERVER ist das superglobale Variablenarray des Servers. Verwenden Sie $_SERVER['REMOTE_ADDR'], um auch die IP-Adresse des Clients abzurufen.
Der Unterschied zwischen den beiden besteht darin, dass getenv die Ausführung von PHP im IIS-Isapi-Modus nicht unterstützt.
Wissen erweitern
Lösen Sie den Unterschied zwischen PHP, das die IP-Adresse nicht erhält, Funktion getenv("REMOTE_ADDR")
und $_SERVER['REMOTE_ADDR']
getenv(“REMOTE_ADDR”)
与$_SERVER['REMOTE_ADDR']
的区别
最近用PHP帮朋友写了个用于投票的页面,一切都很顺利,装上后发现:访客IP地址没能记录上(没能成功获取IP地址),怪事,当初本地测试都好的呀。难不成本地和服务器有别,马上开个空间,测试,仍然一切正常。再一个个问题都排除后,了解到对方是windows下的iis,而自己测试都在apache上,很可能是这个原因。
马上更换函数:将原来的ip地址获取函数”getenv(“REMOTE_ADDR”)
“更换为”$_SERVER['REMOTE_ADDR']
getenv("REMOTE_ADDR")
“ durch „$_SERVER['REMOTE_ADDR']
“, überschreiben und aktualisieren , Schauen Sie sich die Datenbank noch einmal an, die IP-Adresse wurde erfolgreich erfasst, fertig. Empfohlenes Lernen: „🎜PHP-Video-Tutorial🎜“🎜Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen getenv und server in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!