Superglobal $_SERVER de PHP


$_SERVER de PHP

La superglobal $_SERVER contient des informations sur le serveur web, y compris les en-têtes, les chemins et les emplacements des scripts.

Les superglobals de PHP sont des variables intégrées qui sont toujours accessibles dans tous les contextes !

Remarque : Les entrées dans $_SERVER sont créées par le serveur web, donc il n'y a aucune garantie que chaque entrée soit disponible sur différents serveurs ou environnements.

L'exemple ci-dessous montre comment utiliser certains des éléments de $_SERVER :

Exemple

echo $_SERVER['PHP_SELF']; echo $_SERVER['SERVER_NAME']; echo $_SERVER['HTTP_HOST']; echo $_SERVER['HTTP_REFERER']; echo $_SERVER['HTTP_USER_AGENT']; echo $_SERVER['SCRIPT_NAME']; 
Essayez-le vous-même »

Le tableau suivant répertorie les éléments les plus importants qui peuvent se trouver dans $_SERVER :

Élément/Code Description
$_SERVER['PHP_SELF'] Renvoie le nom de fichier du script actuellement exécuté
$_SERVER['GATEWAY_INTERFACE'] Renvoie la version de l'interface de passerelle commune (CGI) utilisée par le serveur
$_SERVER['SERVER_ADDR'] Renvoie l'adresse IP du serveur hôte
$_SERVER['SERVER_NAME'] Renvoie le nom du serveur hôte (tel que www.formation-ti.org)
$_SERVER['SERVER_SOFTWARE'] Renvoie la chaîne d'identification du serveur (tel qu'Apache/2.2.24)
$_SERVER['SERVER_PROTOCOL'] Renvoie le nom et la révision du protocole d'information (tel que HTTP/1.1)
$_SERVER['REQUEST_METHOD'] Renvoie la méthode de requête utilisée pour accéder à la page (tel que POST)
$_SERVER['REQUEST_TIME'] Renvoie l'horodatage du début de la requête (tel que 1377687496)
$_SERVER['QUERY_STRING'] Renvoie la chaîne de requête si la page est accessible via une chaîne de requête
$_SERVER['HTTP_ACCEPT'] Renvoie l'en-tête Accept de la requête actuelle
$_SERVER['HTTP_ACCEPT_CHARSET'] Renvoie l'en-tête Accept_Charset de la requête actuelle (tel que utf-8,ISO-8859-1)
$_SERVER['HTTP_HOST'] Renvoie l'en-tête Host de la requête actuelle
$_SERVER['HTTP_REFERER'] Renvoie l'URL complète de la page actuelle (pas fiable car tous les agents utilisateurs ne le prennent pas en charge)
$_SERVER['HTTPS'] Indique si le script est interrogé via un protocole HTTP sécurisé
$_SERVER['REMOTE_ADDR'] Renvoie l'adresse IP d'où l'utilisateur consulte la page actuelle
$_SERVER['REMOTE_HOST'] Renvoie le nom d'hôte d'où l'utilisateur consulte la page actuelle
$_SERVER['REMOTE_PORT'] Renvoie le port utilisé sur la machine de l'utilisateur pour communiquer avec le serveur web
$_SERVER['SCRIPT_FILENAME'] Renvoie le chemin d'accès absolu du script actuellement exécuté
$_SERVER['SERVER_ADMIN'] Renvoie la valeur donnée à la directive SERVER_ADMIN dans le fichier de configuration du serveur web (si votre script s'exécute sur un hôte virtuel, ce sera la valeur définie pour cet hôte virtuel) (tel que someone@formation-ti.org)
$_SERVER['SERVER_PORT'] Renvoie le port sur la machine du serveur utilisé par le serveur web pour la communication (tel que 80)
$_SERVER['SERVER_SIGNATURE'] Renvoie la version du serveur et le nom de l'hôte virtuel qui sont ajoutés aux pages générées par le serveur
$_SERVER['PATH_TRANSLATED'] Renvoie le chemin basé sur le système de fichiers vers le script actuel
$_SERVER['SCRIPT_NAME'] Renvoie le chemin du script actuel
$_SERVER['SCRIPT_URI'] Renvoie l'URI de la page actuelle