Något
användbart
Nu
ska
vi
göra
något
lite
mer
användbart
än
det
tidigare
;
vi
ska
kontrollera
vilken
webbläsare
besökaren
av
webbsidan
använder
.
För
att
göra
det
undersöker
vi
"
user
agent
"-strängen
som
skickas
till
webbservern
av
webbläsaren
som
en
del
av
HTTP-förfrågan
.
Den
informationen
finns
lagrad
i
en
variabel
.
Variabler
inleds
i
PHP
alltid
med
ett
dollar-tecken
.
Variabeln
vi
behöver
nu
är
$_SERVER[
"HTTP_USER_AGENT"
]
.
PHP Autoglobals-not:
$_SERVER
är en speciell, reserverad variabel i PHP som innehåller
all webbserverinformation.
Den
typen
av
variabel
kallas
för
en
"
autoglobal
"
(eller
superglobal
)
.
Läs
mer
under
sektionen
Autoglobals
(
även
kallade
superglobals
)
.
Dessa
specialvariabler
introducerades
i
version
4.1.0
av
PHP
.
Förut användes istället
$HTTP_*_VARS
-arrayer såsom t.ex.
$HTTP_SERVER_VARS
. Trots att anvädningen av dessa variabler inte
rekommenderas finns de fortfarande kvar. (Se även noten som
behandlar
gammal kod
.)
För
att
skriva
ut
variabeln
,
skriver
vi
helt
enkelt
:
Exempel
2-2
.
Skriva
ut
en
variabel
(
ett
array-element
)
Ovanstående script skulle t.ex. kunna
generera följande:
|
Det
finns
många
olika
typer
av
variabler
i
PHP
.
I
ovanstående
exempel
skrev
vi
ut
ett
element
från
en
array
.
Arrayer
kan
vara
väldigt
användbara
.
$_SERVER
är
bara
en
av
de
variabler
som
automatiskt
finns
tillgängliga
i
PHP
.
En
lista
på
alla
återfinns
i
kapitlet
Reserverade
variabler
,
eller
så
kan
du
skapa
en
lista
med
hjälp
av
följande
PHP-kod
:
Exempel
2-3
.
Visa
alla
fördefinerade
variabler
med
phpinfo(
)
|
Om
du
tittar
på
den
här
filen
i
din
webbläsare
kommer
du
se
en
sida
full
av
information
om
PHP
samt
en
lista
med
de
variabler
som
finns
tillgängliga
.
Du
kan
ha
flera
PHP-kommandon
inom
en
PHP-tagg
och
skapa
små
block
av
kod
som
gör
mer
än
bara
skriver
ut
text
.
Om
vi
till
exempel
skulle
vilja
kontrollera
om
användaren
kör
Internet
Explorer
skulle
vi
kunna
göra
så
här
:
Här
ovan
introducerade
vi
ett
par
nya
begrepp
.
Det
finns
bland
annat
en
if
-sats
.
Om
du
är
bekant
med
den
grundläggande
syntaxen
i
C
bör
det
här
se
logiskt
ut
.
Om
du
inte
kan
C
eller
något
språk
med
en
liknande
syntax
som
den
ovan
bör
du
antagligen
införskaffa
en
PHP-bok
för
nybörjare
och
läsa
åtminstone
de
första
kapitlen
.
Alternativt
kan
du
läsa
Språkreferens
-delen
av
manualen
.
En
förteckning
över
PHP-böcker
finner
du
på
adressen
http
:
/
/www.php.net
/
books.php
.
Det
andra
begreppet
vi
nu
introducerat
är
funktionsanropet
till
strstr(
)
.
strstr(
)
är
en
inbyggd
funktion
i
PHP
som
söker
i
en
sträng
efter
en
annan
sträng
,
i
det
här
fallet
letar
vi
efter
"MSIE
"
inuti
$_SERVER["HTTP_USER_AGENT"
]
.
Om
strängen
hittas
returnerar
funktionen
TRUE
och
om
den
inte
hittas
returneras
FALSE
.
Om
funktionen
returnerar
TRUE
blir
även
if
-satsen
TRUE
och
därmed
körs
PHP-koden
som
omsluts
av
dess
"
måstecken"
,
det
vill
säga
{
och
}
.
Om
inte
,
körs
inte
PHP-koden
inom
nämnda
.
Skapa
gärna
egna
if
-satser
som
även
kan
innehålla
else
,
och
bekanta
dig
med
funktioner
som
strtoupper(
)
och
strlen(
)
.
Dess
sidor
i
manualen
innehåller
alla
exempel
på
hur
funktionerna
används
.
Vi
ska
nu
gå
ännu
längre
och
demonstrera
hur
du
kan
växla
mellan
PHP
och
HTML
mitt
i
ett
PHP-block
:
Exempel
2-5
.
Att
växla
mellan
PHP
och
HTML
Det här scriptet skulle t.ex. kunna skriva
ut följande:
|
Istället
för
att
använda
PHP-funktionen
echo
för
att
skriva
ut
något
,
växlade
vi
till
HTML-läge
och
skrev
vanlig
HTML
.
Observera
dock
att
logiken
i
scriptet
fortfarande
finns
kvar
,
bara
ett
av
HTML-blocken
visas
för
användaren
beroende
på
om
strstr(
)
returnerade
TRUE
eller
FALSE
,
med
andra
ord
om
strängen
MSIE
hittades
eller
inte
.