Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk melaksanakan koleksi ip dalam php
Cara untuk mendapatkan IP dalam PHP: 1. Gunakan "$_SERVER["REMOTE_ADDR"]" untuk mendapatkan; 2. Gunakan "($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"]" untuk mendapatkan ; 3. , gunakan kaedah getRealIp untuk mendapatkan, dsb.
Persekitaran pengendalian artikel ini: sistem Windows 7, PHP versi 7.1, komputer Dell G3.
Bagaimana untuk melaksanakan koleksi ip dalam php?
php mendapat ringkasan alamat IP pelawat
Kami memerlukannya dalam keadaan yang jarang berlaku times Dapatkan alamat IP sebenar pengguna, contohnya, rekod log, geolokasi, maklumat pengguna, analisis data tapak web, dll. Malah, mendapatkan alamat IP adalah sangat mudah, hanya $_SERVER['REMOTE_ADDR'].
Mari kita ringkaskan beberapa kaedah yang biasa digunakan untuk mendapatkan alamat IP.
//Kaedah 1:
$ip = $_SERVER["REMOTE_ADDR"]; echo $ip;
//Kaedah 2:
Kodnya adalah seperti berikut:
$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;
/ /Kaedah 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();
//Kaedah 4:
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 ;
//Kaedah 5:
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;
//Kaedah 6:
print "您的IP地址是:"; if(!empty($_SERVER["HTTP_CLIENT_IP"])){ $cip = $_SERVER["HTTP_CLIENT_IP"]; } elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){ $cip = $_SERVER["HTTP_X_FORWARDED_FOR"]; } elseif(!empty($_SERVER["REMOTE_ADDR"])){ $cip = $_SERVER["REMOTE_ADDR"]; } else{ $cip = "无法获取!"; } print $cip;
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan koleksi ip dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!