Heim > Backend-Entwicklung > PHP-Tutorial > Wie erhalte ich die IP-Adresse des Clients in PHP? (Codebeispiel)

Wie erhalte ich die IP-Adresse des Clients in PHP? (Codebeispiel)

青灯夜游
Freigeben: 2023-04-04 13:08:02
nach vorne
2254 Leute haben es durchsucht

Der Inhalt dieses Artikels besteht darin, vorzustellen, wie man die IP-Adresse des Clients in PHP erhält. (Codebeispiel), lassen Sie alle wissen, wie sie die IP-Adresse in PHP erhalten. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird Ihnen hilfreich sein.

Lassen Sie uns zunächst die Bedeutung von bezogenen Variablen verstehen:

$_SERVER['REMOTE_ADDR']: Durchsuchen Sie die aktuelle Seite Die IP-Adresse des Computers des Benutzers

$_SERVER['HTTP_CLIENT_IP']: Die IP des Clients

$_SERVER ['HTTP_X_FORWARDED_FOR']: Das Gateway des Computers des Benutzers, der die aktuelle Seite durchsucht

$_SERVER['HTTP_X_REAL_IP']: Nginx-Proxy-Modus, Erhalten Sie die echte IP des Clients

Im Folgenden stellen wir die Methode zum Abrufen der Client-IP-Adresse in PHP anhand eines einfachen Codebeispiels vor.

/**
 *  获取客户端IP地址
 */
function real_ip()
{
    $ip = $_SERVER['REMOTE_ADDR'];
    if (isset($_SERVER['HTTP_X_FORWARDED_FOR']) && preg_match_all('#\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}#s', $_SERVER['HTTP_X_FORWARDED_FOR'], $matches)) {
        foreach ($matches[0] AS $xip) {
            if (!preg_match('#^(10|172\.16|192\.168)\.#', $xip)) {
                $ip = $xip;
                break;
            }
        }
    } elseif (isset($_SERVER['HTTP_CLIENT_IP']) && preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/', $_SERVER['HTTP_CLIENT_IP'])) {
        $ip = $_SERVER['HTTP_CLIENT_IP'];
    } elseif (isset($_SERVER['HTTP_CF_CONNECTING_IP']) && preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/', $_SERVER['HTTP_CF_CONNECTING_IP'])) {
        $ip = $_SERVER['HTTP_CF_CONNECTING_IP'];
    } elseif (isset($_SERVER['HTTP_X_REAL_IP']) && preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/', $_SERVER['HTTP_X_REAL_IP'])) {
        $ip = $_SERVER['HTTP_X_REAL_IP'];
    }
    return $ip;
}
Nach dem Login kopieren

Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.

Das obige ist der detaillierte Inhalt vonWie erhalte ich die IP-Adresse des Clients in PHP? (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:cnblogs.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage