


Détermination de l'adresse IP du client en PHP
Le tableau superglobal PHP $_SERVER donne accès à diverses informations relatives au serveur, y compris l'adresse distante du client Adresse IP via $_SERVER['REMOTE_ADDR']. Cependant, cette approche peut échouer dans des scénarios spécifiques.
Dans les cas où la valeur $_SERVER['REMOTE_ADDR'] est incorrecte, d'autres variables de serveur peuvent être utilisées pour acquérir l'adresse IP avec précision. Les éléments suivants explorent deux approches :
Utilisation de la fonction getenv() :
La fonction getenv() récupère la valeur d'une variable d'environnement. Il peut être utilisé pour obtenir l'adresse IP du client comme suit :
function get_client_ip() { $ipaddress = ''; if (getenv('HTTP_CLIENT_IP')) $ipaddress = getenv('HTTP_CLIENT_IP'); else if(getenv('HTTP_X_FORWARDED_FOR')) $ipaddress = getenv('HTTP_X_FORWARDED_FOR'); else if(getenv('HTTP_X_FORWARDED')) $ipaddress = getenv('HTTP_X_FORWARDED'); else if(getenv('HTTP_FORWARDED_FOR')) $ipaddress = getenv('HTTP_FORWARDED_FOR'); else if(getenv('HTTP_FORWARDED')) $ipaddress = getenv('HTTP_FORWARDED'); else if(getenv('REMOTE_ADDR')) $ipaddress = getenv('REMOTE_ADDR'); else $ipaddress = 'UNKNOWN'; return $ipaddress; }
Utilisation du tableau superglobal $_SERVER :
Le tableau $_SERVER contient des informations de requête HTTP. Le code suivant démontre son utilisation pour obtenir l'adresse IP :
function get_client_ip() { $ipaddress = ''; if (isset($_SERVER['HTTP_CLIENT_IP'])) $ipaddress = $_SERVER['HTTP_CLIENT_IP']; else if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) $ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR']; else if(isset($_SERVER['HTTP_X_FORWARDED'])) $ipaddress = $_SERVER['HTTP_X_FORWARDED']; else if(isset($_SERVER['HTTP_FORWARDED_FOR'])) $ipaddress = $_SERVER['HTTP_FORWARDED_FOR']; else if(isset($_SERVER['HTTP_FORWARDED'])) $ipaddress = $_SERVER['HTTP_FORWARDED']; else if(isset($_SERVER['REMOTE_ADDR'])) $ipaddress = $_SERVER['REMOTE_ADDR']; else $ipaddress = 'UNKNOWN'; return $ipaddress; }
Les deux approches offrent des fonctionnalités équivalentes mais diffèrent dans la manière dont elles accèdent aux informations.
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!

TomakePhpApplicationsFaster, suivez lesEsthets: 1) useopCodeCachingLikeOpcachetOsToreprecCompileScriptByteCode.2) MinimizedatabaseQueriesByusingSingQueryCachingAndefficientIndexing.3) Levier

TOIMPROVEPHPAPPLICATIONSPEED, SuivreSesEtsts: 1) Activer le codécachement de la codécaching avec un accumulation de dotation

L'injection de dépendance (DI) améliore considérablement la testabilité du code PHP par des dépendances explicitement transitives. 1) Les classes de découplage en DI et les implémentations spécifiques rendent les tests et la maintenance plus flexibles. 2) Parmi les trois types, le constructeur injecte des dépendances d'expression explicites pour maintenir l'état cohérent. 3) Utilisez des conteneurs DI pour gérer les dépendances complexes pour améliorer la qualité du code et l'efficacité de développement.

DatabaseQueryOptimizationInphpinvolveSeveralStrategieSoenhancePerformance.1) selectOnlyneceSaryColumnStoredatatransfer.2) useIndexingTospeeDupDatareTeval.3) ImplémentQueryCachingTostoreResul

PhpisUsedForsendentemailsDuetOtsBuilt-inmail () function andsupportivelibray likephpmailerandSwiftmailer.1) usethemail () functionforaSicemails, butthaslimitations.2) Employphpmailerfora

Les goulots d'étranglement de performances PHP peuvent être résolus via les étapes suivantes: 1) Utilisez XDebug ou BlackFire pour l'analyse des performances pour découvrir le problème; 2) Optimiser les requêtes de base de données et utiliser des caches, telles que l'APCU; 3) Utilisez des fonctions efficaces telles que Array_Filter pour optimiser les opérations de tableau; 4) Configurer OPCACHE pour ByteCode Cache; 5) Optimiser le frontal, comme la réduction des demandes HTTP et l'optimisation des images; 6) Surveiller et optimiser en continu les performances. Grâce à ces méthodes, les performances des applications PHP peuvent être considérablement améliorées.

Dépendance Injection (DI) InphpisadessignPatterNTHATHATHATHAGE ANDREDUCES CLASSDENDENCES, améliorant la codémodlarité, testabilité et montage.

CachemproveSPhpperFormancedByStoringResultsof computationsorqueriesforquickretrieval, réducingsserverloadAndenHancingResponsetimes.Effectivestrategiesclude: 1) Opcodécache


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

MantisBT
Mantis est un outil Web de suivi des défauts facile à déployer, conçu pour faciliter le suivi des défauts des produits. Cela nécessite PHP, MySQL et un serveur Web. Découvrez nos services de démonstration et d'hébergement.

SublimeText3 version anglaise
Recommandé : version Win, prend en charge les invites de code !

MinGW - GNU minimaliste pour Windows
Ce projet est en cours de migration vers osdn.net/projects/mingw, vous pouvez continuer à nous suivre là-bas. MinGW : un port Windows natif de GNU Compiler Collection (GCC), des bibliothèques d'importation et des fichiers d'en-tête librement distribuables pour la création d'applications Windows natives ; inclut des extensions du runtime MSVC pour prendre en charge la fonctionnalité C99. Tous les logiciels MinGW peuvent fonctionner sur les plates-formes Windows 64 bits.

DVWA
Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

Version crackée d'EditPlus en chinois
Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code
