
Què són i per a
què serveixen aquestes variables del servidor. Comentem algunes de les més
útils.
A causa de la seva naturalesa de llenguatge server-side, PHP és capaç de
donar-nos accés a tot un seguit de variables que ens informen sobre el nostre
servidor i sobre el client. La informació d'aquestes variables és atribuïda pel
servidor i en cap cas ens és possible modificar els seus valors directament
mitjançant l'script. Per a fer-ho és necessari influir directament sobre la
propietat que defineixen.
Existeixen multitud de variables d'aquest tipus, algunes sense utilitat
aparent i unes altres realment interessants i amb una aplicació directa per al
nostre lloc web. Aquí us enumerem algunes d'aquestes variables i la informació
que ens aporten:
|
Variable |
Descripció |
|
$HTTP_USER_AGENT |
Ens
informa principalment sobre el sistema operatiu, tipus i versió de navegador
utilitzat per l'internauta. La seva principal utilitat radica en que, a partir
d'aquesta informació, podem redireccionar els nostres usuaris cap a pàgines
optimitzades per al seu navegador o realitzar qualsevol altre tipus d'acció
en el context d'un navegador determinat. |
|
$HTTP_ACCEPT_LANGUAGE |
Ens
retorna el o els abreujaments de la llengua considerada com principal pel
navegador. Aquesta llengua o llengües principals poden ser triades en el menú
d'opcions del navegador. Aquesta variable resulta també extremadament útil
per a enviar a l'internauta a les pàgines escrites en la seva llengua, si és
que existeixen. |
|
$HTTP_REFERER |
Ens indica
la URL des de la qual l'internauta ha tingut accés a la pàgina. Molt interessant
per a generar botons de "Endarrere" dinàmics o per a crear els
nostres propis sistemes d'estadístiques de visites. |
|
$PHP_SELF |
Ens retorna
una cadena amb la URL del script que està sent executat. Molt interessant per
a crear botons per a recarregar la pàgina. |
|
$HTTP_GET_VARS |
Es tracta
d'un array que emmagatzema els noms i continguts de les variables enviades al
script per URL o per formularis. |
|
$HTTP_POST_VARS |
Es tracta
d'un array que emmagatzema els noms i continguts de les variables enviades al
script per mitjà d'un formulari |
|
$HTTP_COOKIES_VARS |
Es tracta
d'un array que emmagatzema els noms i continguts de les cookies. |
|
$PHP_AUTH_USER |
Emmagatzema
la variable usuari quan s'efectua l'entrada a pàgines d'accés restringit.
Combinat amb $PHP_AUTH_PW resulta ideal per a controlar l'accés a les pàgines
internes del lloc. |
|
$PHP_AUTH_PW |
Emmagatzema
la variable password quan s'efectua l'entrada a pàgines d'accés restringit.
Combinat amb $PHP_AUTH_USER resulta ideal per a controlar l'accés a les
pàgines internes del lloc. |
|
$REMOTE_ADDR |
Mostra
l'adreça IP del visitant. |
|
$DOCUMENT_ROOT |
Ens
retorna el path físic en el qual es troba allotjada la pàgina en el servidor. |
|
$PHPSESSID |
Guarda
l'identificador de sessió de l'usuari. Veurem més endavant en què
consisteixen les sessions. |
No totes aquestes variables estan disponibles en la totalitat de
servidors o en determinades versions d'un mateix servidor. A més, algunes
d'elles han de ser prèviament activades o definides per mitjà d'algun
esdeveniment. Així, per exemple, la variable $HTTP_REFERER no estarà definida
llevat que l'internauta accedeixi al script a partir d'un enllaç des d'altra
pàgina.
Variables superglobals
A partir de PHP 4.1.0, es disposa d'un conjunt de varibles de tipus array
que mantenen informació del sistema, cridades superglobals perquè es defineixen
automàticament en un àmbit global.
Aquestes variables fan referència a les mateixes que s'accedien abans per
mitjà dels arrays del tipus $HTTP_*_VARS. Aquestes encara existeixen, encara
que a partir de PHP 5.0.0 es poden desactivar amb la directiva register_long_arrays.
La llista d'aquestes variables, extreta directament de la documentació de
PHP és la següent:
$GLOBALS
Conté una referència a cada variable disponible en l'espectre de les
variables del script. Les claus d'aquesta matriu són els noms de les variables
globals. $GLOBALS existeix des de PHP 3.
$_SERVER
Variables definides pel servidor web o directament relacionades amb
l'entorn on el script s’està executant.
Anàloga a l'antiga matriu $HTTP_SERVER_VARS (la qual està encara disponible,
encara que no s'usi).
$_GET
Variables proporcionades al script per mitjà de HTTP GET. Anàloga a
l'antiga matriu $HTTP_GET_VARS (la qual està encara disponible, encara que no
s'usi).
$_POST
Variables proporcionades al script per mitjà de HTTP POST. Anàloga a
l'antiga matriu $HTTP_POST_VARS (la qual està encara disponible, encara que no
s'usi).
$_COOKIE
Variables proporcionades al script per mitjà de HTTP COOKIES. Anàloga a
l'antiga matriu $HTTP_COOKIE_VARS (la qual està encara disponible, encara que
no s'usi).
$_FILES
Variables proporcionades al script per mitjà de la pujada de fitxers via HTTP
. Anàloga a l'antiga matriu $HTTP_POST_FILES (la qual està encara disponible,
encara que no s'usi).
$_ENV
Variables proporcionades al script per mitjà de l'entorn. Anàloga a
l'antiga matriu $HTTP_ENV_VARS (la qual està encara disponible, encara que no
s'usi).
$_REQUEST
Variables proporcionades al script per mitjà de qualsevol mecanisme
d'entrada de l'usuari i per tant no es pot confiar en elles. La presència i
l'ordre que apareixen les variables en aquesta matriu és definit per la
directiva de configuració variables_order. Aquesta matriu no té un anàleg en
versions anteriors a PHP 4.1.0.
$_SESSION
Variables registrades en la sessió del script. Anàloga a l'antiga matriu
$HTTP_SESSION_VARS (la qual està encara disponible, encara que no s'usi).