Variables prédéfinies
Variables de serveur :
$_SERVER
Introduite
en
4.1.0
.
Dans
les
versions
plus
anciennes
,
elle
s
'
appelait
$HTTP_SERVER_VARS
.
Cette
variable
est
une
'
superglobal
'
,
ou
globale
automatique
.
Cela
signifie
qu'
elle
est
simplement
disponible
dans
tous
les
contextes
d'exécution
(fonctions
ou
méthodes
)
.
Vous
n'
avez
pas
besoin
de
faire
global
$_SERVER
;
pour
y
accéder
,
comme
vous
le
faisiez
avec
$HTTP_SERVER_VARS
.
$HTTP_SERVER_VARS
contient
les
mêmes
informations
,
mais
n
'
est
pas
autoglobale
.
Si
la
directive
register_globals
est
active
,
alors
ces
variables
seront
aussi
rendues
directement
accessible
dans
le
contexte
d
'
exécution
global
.
C
'
est
à
dire
séparément
des
tableaux
$_SERVER
et
$HTTP_SERVER_VARS
.
Pour
plus
d
'
informations
sur
la
sécurité
de
cette
configuration
,
voyez
le
chapitre
Utiliser
la
directive
Register
Globals
.
Ces
variables
globales
individuelles
ne
sont
pas
des
globales
.
- '
PHP_SELF
'
-
Le
nom
du
fichier
du
script
en
cour
d
'
éxécution
,
par
rapport
au
document
root
.
Par
exemple
,
$_SERVER[
'PHP_SELF'
]
dans
le
script
situé
à
l
'adresse
http
:
/
/www.monsite.com
/
test.php
/
foo.bar
sera
/
test.php
/
foo.bar
.
Si
PHP
fonctionne
en
ligne
de
commande
,
cette
variable
n
'
est
pas
disponible
.
- '
argv
'
-
Tableau
des
arguments
passées
au
script
.
Lorsque
le
script
est
appelé
en
ligne
de
commande
,
cela
donne
accès
aux
arguments
,
comme
en
langage
C
.
Lorsque
le
script
est
appelé
avec
la
méthode
GET
,
ce
tableau
contiendra
la
chaîne
de
requête
.
- '
argc
'
-
Contient
le
nombre
de
paramètres
de
la
ligne
de
commande
passés
au
script
(
si
le
script
fonctionne
en
ligne
de
commande
)
.
- '
GATEWAY_INTERFACE
'
-
Numéro
de
révision
de
l'
interface
CGI
du
serveur
:
i.e
.
'
CGI
/
1.1
'
.
- '
SERVER_NAME
'
-
Le
nom
du
serveur
hôte
qui
éxécute
le
script
suivant
.
Si
le
script
est
exécuté
sur
un
hôte
virtuel
,
ce
sera
la
valeur
définie
pour
cet
hôte
virtuel
.
- '
SERVER_SOFTWARE
'
-
Chaîne
d
'
identification
du
serveur
,
qui
est
donnée
dans
les
en-têtes
lors
de
la
réponse
aux
requêtes
.
- '
SERVER_PROTOCOL
'
-
Nom
et
révision
du
protocole
de
communication
:
i.e
.
'
HTTP
/
1.0
'
;
- '
REQUEST_METHOD
'
-
Méthode
de
requête
utilisée
pour
accéder
à
la
page
;
i.e
.
'
GET
'
,
'
HEAD
'
,
'
POST
'
,
'
PUT
'
.
- '
QUERY_STRING
'
-
La
chaîne
de
requête
,
si
elle
existe
,
qui
est
utilisée
pour
accéder
à
la
page
.
- '
DOCUMENT_ROOT
'
-
La
racine
sous
laquelle
le
script
courant
est
exécuté
,
comme
défini
dans
la
configuration
du
serveur
.
- '
HTTP_ACCEPT
'
-
Contenu
de
l'
en-tête
Accept
:
de
la
requête
courante
,
s
'il
y
en
a
une
.
- '
HTTP_ACCEPT_CHARSET
'
-
Contenu
de
l'
en-tête
Accept-Charset
:
de
la
requête
courante
,
s
'elle
existe
.
Par
exemple
:
'
iso-8859-1,*,utf-8
'
.
- '
HTTP_ACCEPT_ENCODING
'
-
Contenu
de
l
'
en-tête
Accept-Encoding
:
de
la
requête
courante
,
si
elle
existe
.
Par
exemple
:
'
gzip
'
.
- '
HTTP_ACCEPT_LANGUAGE
'
-
Contenu
de
l
'
en-tête
Accept-Language
:
de
la
requête
courante
,
si
elle
existe
.
Par
exemple
:
'
fr
'
.
- '
HTTP_CONNECTION
'
-
Contenu
de
l
'
en-tête
Connection
:
de
la
requête
courante
,
si
elle
existe
.
Par
exemple
:
'
Keep-Alive
'
.
- '
HTTP_HOST
'
-
Contenu
de
l
'
en-tête
Host
:
de
la
requête
courante
,
si
elle
existe
.
- '
HTTP_REFERER
'
-
L'
adresse
de
la
page
(si
elle
existe
)
qui
a
conduit
le
client
à
la
page
courante
.
Cette
valeur
est
affectée
par
le
client
,
et
tous
les
clients
ne
le
font
pas
.
Certains
navigateur
permettent
même
de
modifier
la
valeur
de
HTTP_REFERER
,
sous
forme
de
fonctionnalité
.
En
bref
,
ce
n
'
est
pas
une
valeur
de
confiance
.
- '
HTTP_USER_AGENT
'
-
Contenu
de
l
'
en-tête
User_Agent
:
de
la
requête
courante
,
si
elle
existe
.
C
'
est
une
chaîne
qui
décrit
le
client
HTML
utilisé
pour
voir
la
page
courante
.
Par
exemple
:
Entre
autres
choses
,
vous
pouvez
utiliser
cette
valeur
avec
get_browser(
)
pour
optimiser
votre
page
en
fonction
des
capacités
du
client
.
- '
REMOTE_ADDR
'
-
L
'
adresse
IP
du
client
qui
demande
la
page
courante
.
- '
REMOTE_PORT
'
-
Le
port
utilisé
par
la
machine
cliente
pour
communiquer
avec
le
serveur
web
.
- '
SCRIPT_FILENAME
'
-
Le
chemin
absolu
jusqu
'
au
script
courant
.
- '
SERVER_ADMIN
'
-
La
valeur
donnée
à
la
directive
SERVER_ADMIN
(
pour
Apache
)
,
dans
le
fichier
de
configuration
.
Si
le
script
est
exécuté
par
un
hôte
virtuel
,
ce
sera
la
valeur
définie
par
l
'
hôte
virtuel
.
- '
SERVER_PORT
'
-
Le
port
de
la
machine
serveur
utilisé
pour
les
communications
.
Par
défaut
,
c'
est
'80
'
.
En
utilisant
SSL
,
par
exemple
,
il
sera
remplacé
par
le
numéro
de
port
HTTP
sécurisé
.
- '
SERVER_SIGNATURE
'
-
Chaîne
contenant
le
numéro
de
version
du
serveur
et
le
nom
d
'
hôte
virtuel
,
qui
sont
ajoutés
aux
pages
générées
par
le
serveur
,
si
cette
option
est
activée
.
- '
PATH_TRANSLATED
'
-
Chemin
dans
le
système
de
fichier
(
pas
le
document
root
-
)
jusqu
'au
script
courant
,
une
fois
que
le
serveur
a
fait
une
chemin
traduction
virtuel
-
réel
.
- '
SCRIPT_NAME
'
-
Contient
le
nom
du
script
courant
.
Cela
sert
lorsque
les
pages
doivent
s
'
appeler
elles-mêmes
.
- '
REQUEST_URI
'
-
L
'
URI
qui
a
été
fourni
pour
accéder
à
cette
page
.
Par
exemple
:
'
/
index.html
'
.
Variables d'environnement :
$_ENV
Introduite
en
4.1.0
.
Dans
les
versions
plus
anciennes
,
elle
s
'
appelait
$HTTP_ENV_VARS
.
Cette
variable
est
importée
dans
l'
espace
de
nom
global
de
PHP
,
depuis
l'environnement
dans
lequel
l
'exécutable
PHP
fonctionne
.
De
nombreuses
valeur
sont
fournies
par
le
shell
qui
exécute
PHP
,
et
différents
systèmes
pouvant
disposer
de
différents
shell
,
même
un
début
de
liste
serait
ici
impossible
.
Reportez
vous
à
la
documentation
de
votre
shell
pour
connaître
une
liste
de
variables
prédéfinies
.
Les
autres
variables
d
'
environnement
incluent
les
variables
CGI
,
placées
ici
,
indépendemment
du
fait
que
PHP
fonctionne
en
tant
que
CGI
ou
bien
que
module
du
serveur
.
Cette
variable
est
une
'
superglobal
'
,
ou
globale
automatique
.
Cela
signifie
qu'
elle
est
simplement
disponible
dans
tous
les
contextes
d'exécution
(fonctions
ou
méthodes
)
.
Vous
n'
avez
pas
besoin
de
faire
global
$_ENV
;
pour
y
accéder
,
comme
vous
le
faisiez
avec
$HTTP_ENV_VARS
.
$HTTP_ENV_VARS
contient
les
mêmes
informations
,
mais
n
'
est
pas
autoglobale
.
Si
la
directive
register_globals
est
active
,
alors
ces
variables
seront
aussi
rendues
directement
accessible
dans
le
contexte
d
'
exécution
global
.
C
'
est
à
dire
séparément
des
tableaux
$_ENV
et
$HTTP_ENV_VARS
.
Pour
plus
d
'
informations
sur
la
sécurité
de
cette
configuration
,
voyez
le
chapitre
Utiliser
la
directive
Register
Globals
.
Ces
variables
globales
individuelles
ne
sont
pas
des
globales
.
HTTP Cookies:
$_COOKIE
Introduite
en
4.1.0
.
Dans
les
versions
plus
anciennes
,
elle
s
'
appelait
$HTTP_COOKIE_VARS
.
Un
tableau
associatif
des
valeurs
passées
au
script
courant
via
les
cookies
HTTP
.
Elle
est
automatiquement
global
dans
tous
les
contextes
d
'
exécution
.
Cette
variable
est
une
'
superglobal
'
,
ou
globale
automatique
.
Cela
signifie
qu'
elle
est
simplement
disponible
dans
tous
les
contextes
d'exécution
(fonctions
ou
méthodes
)
.
Vous
n'
avez
pas
besoin
de
faire
global
$_COOKIE
;
pour
y
accéder
,
comme
vous
le
faisiez
avec
$HTTP_COOKIE_VARS
.
$HTTP_COOKIE_VARS
contient
les
mêmes
informations
,
mais
n
'
est
pas
autoglobale
.
Si
la
directive
register_globals
est
active
,
alors
ces
variables
seront
aussi
rendues
directement
accessible
dans
le
contexte
d
'
exécution
global
.
C
'
est
à
dire
séparément
des
tableaux
$_COOKIE
et
$HTTP_COOKIE_VARS
.
Pour
plus
d
'
informations
sur
la
sécurité
de
cette
configuration
,
voyez
le
chapitre
Utiliser
la
directive
Register
Globals
.
Ces
variables
globales
individuelles
ne
sont
pas
des
globales
.
HTTP GET variables:
$_GET
Introduite
en
4.1.0
.
Dans
les
versions
plus
anciennes
,
elle
s
'
appelait
$HTTP_GET_VARS
.
Un
tableau
associatif
des
valeurs
passées
au
script
courant
via
le
protocole
HTTP
et
la
méthode
GET
.
Elle
est
automatiquement
globale
dans
tous
les
contextes
d
'
exécution
.
Cette
variable
est
une
'
superglobal
'
,
ou
globale
automatique
.
Cela
signifie
qu'
elle
est
simplement
disponible
dans
tous
les
contextes
d'exécution
(fonctions
ou
méthodes
)
.
Vous
n'
avez
pas
besoin
de
faire
global
$_GET
;
pour
y
accéder
,
comme
vous
le
faisiez
avec
$HTTP_GET_VARS
.
$HTTP_GET_VARS
contient
les
mêmes
informations
,
mais
n
'
est
pas
autoglobale
.
Si
la
directive
register_globals
est
active
,
alors
ces
variables
seront
aussi
rendues
directement
accessible
dans
le
contexte
d
'
exécution
global
.
C
'
est
à
dire
séparément
des
tableaux
$_GET
et
$HTTP_GET_VARS
.
Pour
plus
d
'
informations
sur
la
sécurité
de
cette
configuration
,
voyez
le
chapitre
Utiliser
la
directive
Register
Globals
.
Ces
variables
globales
individuelles
ne
sont
pas
des
globales
.
HTTP POST variables:
$_POST
Introduite
en
4.1.0
.
Dans
les
versions
plus
anciennes
,
elle
s
'
appelait
$HTTP_POST_VARS
.
Un
tableau
associatif
des
valeurs
passées
au
script
courant
via
le
protocole
HTTP
et
la
méthode
POST
.
Elle
est
automatiquement
globale
dans
tous
les
contextes
d
'
exécution
.
Cette
variable
est
une
'
superglobal
'
,
ou
globale
automatique
.
Cela
signifie
qu'
elle
est
simplement
disponible
dans
tous
les
contextes
d'exécution
(fonctions
ou
méthodes
)
.
Vous
n'
avez
pas
besoin
de
faire
global
$_POST
;
pour
y
accéder
,
comme
vous
le
faisiez
avec
$HTTP_POST_VARS
.
$HTTP_POST_VARS
contient
les
mêmes
informations
,
mais
n
'
est
pas
autoglobale
.
Si
la
directive
register_globals
est
active
,
alors
ces
variables
seront
aussi
rendues
directement
accessible
dans
le
contexte
d
'
exécution
global
.
C
'
est
à
dire
séparément
des
tableaux
$_POST
et
$HTTP_POST_VARS
.
Pour
plus
d
'
informations
sur
la
sécurité
de
cette
configuration
,
voyez
le
chapitre
Utiliser
la
directive
Register
Globals
.
Ces
variables
globales
individuelles
ne
sont
pas
des
globales
.
Variable de téléchargement de fichier via HTTP :
$_FILES
Introduite
en
4.1.0
.
Dans
les
versions
plus
anciennes
,
elle
s
'
appelait
$HTTP_POST_FILES
.
Un
tableau
associatif
des
valeurs
téléchargées
au
script
courant
via
le
protocole
HTTP
et
la
méthode
POST
.
Elle
est
automatiquement
globale
dans
tous
les
contextes
d
'
exécution
.
Cette
variable
est
une
'
superglobal
'
,
ou
globale
automatique
.
Cela
signifie
qu'
elle
est
simplement
disponible
dans
tous
les
contextes
d'exécution
(fonctions
ou
méthodes
)
.
Vous
n'
avez
pas
besoin
de
faire
global
$_FILES
;
pour
y
accéder
,
comme
vous
le
faisiez
avec
$HTTP_POST_FILES
.
$HTTP_POST_FILES
contient
les
mêmes
informations
,
mais
n
'
est
pas
autoglobale
.
Si
la
directive
register_globals
est
active
,
alors
ces
variables
seront
aussi
rendues
directement
accessible
dans
le
contexte
d
'
exécution
global
.
C
'
est
à
dire
séparément
des
tableaux
$_FILES
et
$HTTP_POST_FILES
.
Pour
plus
d
'
informations
sur
la
sécurité
de
cette
configuration
,
voyez
le
chapitre
Utiliser
la
directive
Register
Globals
.
Ces
variables
globales
individuelles
ne
sont
pas
des
globales
.
Variables de requête :
$_REQUEST
Introduite
en
4.1.0
.
Dans
les
versions
plus
anciennes
,
elle
n'
avait
pas
d
'équivalent
.
Un
tableau
associatif
constitué
du
contenu
des
variables
$_GET
,
$_POST
,
$_COOKIE
,
et
$_FILES
.
Cette
variable
est
une
'
superglobal
'
,
ou
globale
automatique
.
Cela
signifie
qu'
elle
est
simplement
disponible
dans
tous
les
contextes
d'exécution
(fonctions
ou
méthodes
)
.
Vous
n'
avez
pas
besoin
de
faire
global
$_REQUEST
;
pour
y
accéder
.
Si
la
directive
register_globals
est
active
,
alors
ces
variables
seront
aussi
rendues
directement
accessible
dans
le
contexte
d
'
exécution
global
.
C
'
est
à
dire
séparément
des
tableaux
$_REQUEST
.
Pour
plus
d
'
informations
sur
la
sécurité
de
cette
configuration
,
voyez
le
chapitre
Utiliser
la
directive
Register
Globals
.
Ces
variables
globales
individuelles
ne
sont
pas
des
globales
.
Session variables:
$_SESSION
Introduite
en
4.1.0
.
Dans
les
versions
plus
anciennes
,
elle
s
'
appelait
$HTTP_SESSION_VARS
.
Un
tableau
associatif
des
valeurs
stockées
dans
les
sessions
,
et
accessible
au
script
courant
.
Elle
est
automatiquement
globale
dans
tous
les
contextes
d
'
exécution
.
Voyez
l
'
extension
Sessions
pour
plus
de
détails
sur
comment
est
utilisée
cette
variable
.
Cette
variable
est
une
'
superglobal
'
,
ou
globale
automatique
.
Cela
signifie
qu'
elle
est
simplement
disponible
dans
tous
les
contextes
d'exécution
(fonctions
ou
méthodes
)
.
Vous
n'
avez
pas
besoin
de
faire
global
$_SESSION
;
pour
y
accéder
,
comme
vous
le
faisiez
avec
$HTTP_SESSION_VARS
.
$HTTP_SESSION_VARS
contient
les
mêmes
informations
,
mais
n
'
est
pas
autoglobale
.
Si
la
directive
register_globals
est
active
,
alors
ces
variables
seront
aussi
rendues
directement
accessible
dans
le
contexte
d
'
exécution
global
.
C
'
est
à
dire
séparément
des
tableaux
$_SESSION
et
$HTTP_SESSION_VARS
.
Pour
plus
d
'
informations
sur
la
sécurité
de
cette
configuration
,
voyez
le
chapitre
Utiliser
la
directive
Register
Globals
.
Ces
variables
globales
individuelles
ne
sont
pas
des
globales
.
Variables globales:
$GLOBALS
Note :
$GLOBALS
est disponible depuis PHP 3.0.0.
Un
tableau
associatif
contenant
les
références
sur
toutes
les
variables
globales
actuellement
définies
dans
le
contexte
d
'
exécution
global
du
script
.
Les
noms
des
variables
sont
les
index
du
tableau
.
Cette
variable
est
une
'
superglobal
'
,
ou
globale
automatique
.
Cela
signifie
qu'
elle
est
simplement
disponible
dans
tous
les
contextes
d'exécution
(fonctions
ou
méthodes
)
.
Vous
n'
avez
pas
besoin
de
faire
global
$GLOBALS
;
pour
y
accéder
.
Le dernier message d'erreur :
$php_errormsg
$php_errormsg
est
une
variable
qui
contient
le
texte
de
la
dernière
erreur
générée
par
PHP
.
Cette
variable
sera
uniquement
accessible
dans
le
même
contexte
d'
exécution
que
celui
de
la
ligne
qui
a
généré
l'erreur
,
et
uniquement
si
la
directive
de
configuration
track_errors
est
activée
(elle
est
désactivée
par
défaut
)
.