Trucs pratiques
Réalisons
maintenant
quelque
chose
de
plus
puissant
.
Nous
allons
vérifier
le
type
de
navigateur
que
le
visiteur
de
notre
site
utilise
.
Pour
cela
,
nous
allons
accéder
aux
informations
que
le
navigateur
du
visiteur
nous
envoie
,
lors
de
sa
requête
HTTP
.
Cette
information
est
stockée
dans
une
variable
.
Les
variables
sont
faciles
à
repérer
,
car
elles
commencent
toutes
par
un
signe
dollar
.
La
variable
qui
nous
interesse
ici
est
is
$_SERVER[
"HTTP_USER_AGENT"
]
.
Attention pour les auto-globales de PHP :
$_SERVER
est une variable spéciale de PHP, qui contient toutes les
informations relatives au serveur web.
C
'
est
une
variable
réservée
de
PHP
,
et
une
auto-globale
.
Reportez-vous
aux
pages
du
manuel
traitant
des
Auto-globales
(
aussi
connues
sous
le
noms
de
super-globales
)
.
Ces
variables
spéciales
ont
été
introduites
en
PHP
4.1.0
.
Auparavant
,
il
fallait
utiliser
les
variables
$HTTP_*_VARS
,
comme
par
exemple
$HTTP_SERVER_VARS
.
Bien
qu
'
obsolètes
,
ces
variables
existent
toujours
.
Pour
afficher
cette
variable
,
nous
pouvons
simplement
faire
:
Exemple
2-2
.
Afficher
le
contenu
d'
une
variable
(élément
de
tableau
)
Un
résultat
possible
du
script
pourra
alors
être
:
|
Il
y
a
de
nombreux
types
de
variables
disponibles
en
PHP
.
Dans
l'
exemple
ci-dessus
,
nous
avons
affiché
un
élément
de
Tableau
(Array
)
.
Les
tableaux
peuvent
être
très
utiles
.
$_SERVER
est
juste
une
variable
qui
est
automatiquement
disponible
dans
votre
script
.
Une
liste
de
toutes
les
variables
qui
sont
rendues
disponibles
est
fournie
dans
la
section
Variables
réservées
.
Vous
pouvez
aussi
en
obtenir
une
liste
complète
en
créant
un
fichier
qui
comme
ceci
:
Exemple
2-3
.
Afficher
toutes
les
variables
prédéfinies
phpinfo(
)
|
Lorsque
vous
chargez
cette
page
dans
votre
navigateur
,
vous
allez
découvrir
une
page
pleine
d'
informations
sur
PHP
,
ainsi
qu
'une
liste
des
variables
qui
sont
disponibles
.
Vous
pouvez
ajouter
plusieurs
commandes
PHP
dans
une
balise
PHP
,
et
créer
de
petits
blocs
de
code
qui
réalisent
des
opérations
plus
complexes
qu
'
un
simple
affichage
.
Par
exemple
,
si
nous
voulons
vérifier
que
le
navigateur
est
bien
de
la
famille
des
Internet
Explorer
,
nous
pouvons
faire
cela
:
Exemple
2-4
.
Exemple
utilisant
les
structures
de
contrôle
et
les
fonctions
?php
if
(
strstr($_SERVER["HTTP_USER_AGENT"]
,
"MSIE")
)
{
echo
"Vous
utilisez
Internet
Explorer
br
/
"
;
}
?
|
Le
résultat
de
ce
script
,
si
vous
utilisez
Internet
Explorer
,
sera
:
Vous
utilisez
Internet
Explorer
br
/
|
|
Ici
,
nous
introduisons
plusieurs
nouveaux
concepts
.
Nous
avons
une
structure
if
.
Si
vous
êtes
familier
avec
les
syntaxes
de
base
du
langage
C
,
cela
ne
vous
surprendra
.
Si
vous
ne
connaissez
pas
assez
le
langage
C
ou
un
autre
langage
où
la
syntaxe
est
similaire
à
celle
ci-dessus
,
il
vaudrait
mieux
que
vous
lisiez
une
introduction
à
PHP
,
et
assimiliez
les
premiers
chapitres
,
ou
bien
lisez
le
chapitre
consacré
à
la
référence
du
langage
.
Vous
pouvez
trouvez
une
liste
de
livres
PHP
à
http
:
/
/www.php.net
/
books.php
.
Le
second
concept
que
nous
avons
introduit
est
la
fonction
strstr(
)
.
strstr(
)
est
une
fonction
intégrée
à
PHP
,
qui
recherche
la
présence
d
'une
chaîne
dans
une
autre
.
Dans
notre
cas
,
nous
avons
recherché
la
chaîne
"
MSIE
"
dans
la
chaîne
$_SERVER["HTTP_USER_AGENT"
]
.
Si
cette
chaîne
est
trouvée
,
la
fonction
retourne
TRUE
et
sinon
,
FALSE
.
Si
elle
retourne
TRUE
,
la
commande
if
reçoit
TRUE
et
le
code
entre
accolades
{
}
est
exécuté
.
N'
hésitez
pas
à
expérimenter
d'autres
exemples
,
à
l'aide
de
if
,
else
,
et
d'autres
fonctions
comme
strtoupper(
)
et
strlen(
)
.
Chaque
page
de
la
documentation
contient
aussi
des
exemples
.
Nous
pouvons
aussi
progresser
et
vous
montrer
comment
utiliser
le
mode
PHP
,
au
milieu
du
code
HTML
:
Exemple
2-5
.
Passer
du
mode
PHP
au
mode
HTML
et
vice-versa
?php
if
(
strstr($_SERVER["HTTP_USER_AGENT"]
,
"MSIE")
)
{
?
h3
strstr
a
retourn
eacute
;
TRUE
/
h3
center
b
Vous
utilisez
Internet
Explorer
/
b
/
center
?php
}
else
{
?
h3
strstr
a
retourn
eacute
;
FALSE
/
h3
center
b
Vous
n'utilisez
pas
Internet
Explorer
/
b
/
center
?php
}
?
|
Un
exemple
de
résultat
obtenu
dans
ce
script
est
:
h3
strstr
a
retourn
eacute
;
TRUE
/
h3
center
b
Vous
utilisez
Internet
Explorer
/
b
/
center
|
|
Au
lieu
d'
utilise
une
commande
echo(
)
,
pour
afficher
du
texte
,
vous
pouvez
utiliser
du
code
HTML
pur
.
Le
point
important
a
noter
ici
et
que
la
logique
de
programmation
est
conservée
.
Seul
un
des
deux
blocs
HTML
sera
affiché
,
suivant
que
le
navigateur
utilise
ou
pas
Internet
Explorer
.