Maison > Article > développement back-end > PHP implémente une classe d'encapsulation pour obtenir l'adresse IP du client et du serveur
Cet article présente principalement la classe d'encapsulation pour PHP pour obtenir l'IP du client et du serveur. Il analyse brièvement l'utilisation de base de PHP à l'aide de variables prédéfinies par le serveur et effectue une simple encapsulation. Les amis dans le besoin peuvent s'y référer
. Les détails sont les suivants :
Variables liées à l'IP du client :
1 $_SERVER['REMOTE_ADDR'] ; peut également être l’adresse IP du proxy.
2. $_SERVER['HTTP_CLIENT_IP']; L'adresse IP du proxy peut exister et peut être falsifiée.
3. $_SERVER['HTTP_X_FORWARDED_FOR'] ; L'adresse IP que l'utilisateur utilise comme proxy peut exister et peut être falsifiée.
Variables liées à l'IP côté serveur :
1 $_SERVER["SERVER_NAME"], qui doit être obtenue à l'aide de la fonction gethostbyname(). Cette variable s'affiche correctement côté serveur et côté client.
2. $_SERVER["SERVER_ADDR"], testé côté serveur : 127.0.0.1 (ceci est lié à la valeur de paramètre de BindAddress dans httpd.conf). Les résultats des tests sur le client sont corrects. Les
catégories sont les suivantes :
class getIP{ function clientIP(){ $cIP = getenv('REMOTE_ADDR'); $cIP1 = getenv('HTTP_X_FORWARDED_FOR'); $cIP2 = getenv('HTTP_CLIENT_IP'); $cIP1 ? $cIP = $cIP1 : null; $cIP2 ? $cIP = $cIP2 : null; return $cIP; } function serverIP(){ return gethostbyname($_SERVER["SERVER_NAME"]); } } $getIP = new getIP(); $clientIp = getIP::clientIP(); $serverIp = getIP::serverIP(); echo 'Client IP is ',$clientIp,'<br />'; echo 'Server IP is ',$serverIp,'<br />';
Résumé : Ce qui précède représente l'intégralité du contenu de cet article. , j’espère que cela pourra aider l’apprentissage de chacun.
Recommandations associées :
Exemples de PHP conforme aux normes de programmation PSR
php curl simulé connectez-vous Et obtenez l'explication détaillée des 4 méthodes de fonctionnement courantes de php pour les instances de données
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!