Heim > Artikel > Backend-Entwicklung > So implementieren Sie die IP-Sammlung in PHP
So erhalten Sie IP in PHP: 1. Verwenden Sie „$_SERVER[“REMOTE_ADDR“]“, um 2. Verwenden Sie „($user_IP) ? $user_IP : $_SERVER[“REMOTE_ADDR“]“, um 3. Verwenden Sie; getRealIp-Methode Get usw.
Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP Version 7.1, Dell G3-Computer.
Wie implementiert PHP die IP-Erfassung?
php erhält eine Zusammenfassung der Besucher-IP-Adressen
Manchmal müssen wir die tatsächliche IP-Adresse des Benutzers abrufen, zum Beispiel für Protokolldatensätze, Geolokalisierung, Benutzerinformationen oder Website-Datenanalyse usw. Tatsächlich ist es sehr einfach, die IP-Adresse zu erhalten, nur $_SERVER['REMOTE_ADDR'].
Jetzt fassen wir für Sie einige häufig verwendete Methoden zum Erhalten von IP-Adressen zusammen.
//Methode 1:
$ip = $_SERVER["REMOTE_ADDR"]; echo $ip;
//Methode 2:
Der Code lautet wie folgt:
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"]; $user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"]; echo $user_IP;
//Methode 3:
function getRealIp() { $ip=false; if(!empty($_SERVER["HTTP_CLIENT_IP"])){ $ip = $_SERVER["HTTP_CLIENT_IP"]; } if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { $ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']); if ($ip) { array_unshift($ips, $ip); $ip = FALSE; } for ($i = 0; $i < count($ips); $i++) { if (!eregi ("^(10│172.16│192.168).", $ips[$i])) { $ip = $ips[$i]; break; } } } return ($ip ? $ip : $_SERVER['REMOTE_ADDR']); } echo getRealIp();
// Methode 5:
if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"]) { $ip = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"]; } elseif ($HTTP_SERVER_VARS["HTTP_CLIENT_IP"]) { $ip = $HTTP_SERVER_VARS["HTTP_CLIENT_IP"]; } elseif ($HTTP_SERVER_VARS["REMOTE_ADDR"]) { $ip = $HTTP_SERVER_VARS["REMOTE_ADDR"]; } elseif (getenv("HTTP_X_FORWARDED_FOR")) { $ip = getenv("HTTP_X_FORWARDED_FOR"); } elseif (getenv("HTTP_CLIENT_IP")) { $ip = getenv("HTTP_CLIENT_IP"); } elseif (getenv("REMOTE_ADDR")) { $ip = getenv("REMOTE_ADDR"); } else { $ip = "Unknown"; } echo $ip ;
/ /Methode 6:
if(getenv('HTTP_CLIENT_IP')) { $onlineip = getenv('HTTP_CLIENT_IP'); } elseif(getenv('HTTP_X_FORWARDED_FOR')) { $onlineip = getenv('HTTP_X_FORWARDED_FOR'); } elseif(getenv('REMOTE_ADDR')) { $onlineip = getenv('REMOTE_ADDR'); } else { $onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR']; } echo $onlineip;
Empfohlenes Lernen: „
PHP-Video-TutorialDas obige ist der detaillierte Inhalt vonSo implementieren Sie die IP-Sammlung in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!