Het
require(
)
statement
vervangt
zichzelf
met
de
gespecificeerde
file
,
bijna
gelijk
als
de
C
preprocessor
's
#include
werkt
.
Als
"
URL
fopen
wrappers
"
zijn
enabled
in
PHP
(dit
zijn
ze
in
de
default
distributie
)
dan
kun
je
met
require(
)
Als
"URL
fopen
wrappers
"
zijn
enabled
in
PHP
(dit
zijn
ze
in
de
default
distributie
)
dan
kun
je
met
require(
)
ook
een
URL
gebruiken
in
plaats
van
een
lokaal
bestand
.
Zie
Remote
files
en
fopen(
)
voor
meer
informatie
.
Het
is
belangrijk
om
te
weten
dat
wanneer
er
een
bestand
wordt
ge
include(
)
ed
of
ge
require(
)
ed
,
de
parser
uit
PHP
komt
en
naar
HTML
mode
gaat
voordat
het
bestand
wordt
toegevoegd
,
en
weer
start
met
de
PHP
mode
aan
het
einde
van
het
bestand
.
Om
deze
reden
moet
alle
code
in
het
bestand
dat
als
PHP
code
moet
worden
geïnterpreteerd
moet
worden
omvat
met
geldige
PHP
start
en
end
tags
.
require(
)
is
eigenlijk
geen
functie
in
PHP
;
maar
het
is
een
taal
constructie
.
Er
gelden
andere
dingen
voor
constructies
dan
voor
functies
.
Bijvoorbeeld
is
het
niet
mogelijk
om
require(
)
een
return
waarde
mee
te
geven
.
Als
je
toch
probeert
een
return
waarde
te
lezen
uit
een
require(
)
aanroep
,
krijg
je
een
parse
error
.
In
tegenstelling
tot
include(
)
leest
require(
)
altijd
het
bestand
in
,
zelfs
als
de
regel
waarop
de
require
call
staat
nooit
wordt
uitgevoerd
.
.
Als
je
een
bestand
conditioneel
wilt
laden
,
gebruik
dan
de
include(
)
functie
.
Een
conditioneel
statement
heeft
geen
invloed
op
een
require(
)
.
Als
een
regel
waarop
de
require(
)
staat
niet
wordt
uitgevoerd
,
dan
zal
de
code
in
de
required
file
ook
niet
worden
uitgevoerd
.
Gelijksoortig
hebben
loop
structuren
geen
effect
op
het
gedrag
van
require(
)
.
Hoewel
de
code
in
de
required
file
nog
steeds
in
de
loop
staat
,
wordt
het
require(
)
statement
zelf
maar
ëën
keer
uitgevoerd
.
Al
dit
betekend
dat
je
niet
kunt
verwachten
dat
require(
)
Al
dit
betekend
dat
je
niet
kunt
verwachten
dat
require(
)
binnen
een
loop
structuur
per
iteratie
een
ander
besstand
kan
invoegen
.
Om
zoiets
te
doen
,
kun
je
het
include(
)
statement
gebruiken
.
Als
een
bestand
is
ge
require(
)
ed
,
dan
zal
de
code
de
inhoud
van
de
variabele
scope
overnemen
zoals
deze
was
op
het
punt
van
de
require(
)
.
Alle
variabelen
die
beschikbaar
waren
in
de
aanroepende
file
,
zullen
ook
beschikbaar
zijn
de
in
aangeroepen
file
.
Als
de
require(
)
optreed
in
een
functie
in
de
aanroepende
file
,
dan
zal
de
code
die
zich
in
het
bestand
dat
ge-required
wordt
zich
gedragen
alsof
deze
in
de
functie
waarin
require(
)
wordt
aangeroepen
.
Als
de
require(
)
ed
file
wordt
opgeroepen
over
HTTP
met
gebruikmakend
van
de
fopen
wrappers
,
en
als
de
target
server
dit
bestand
kan
interpreteren
als
PHP
code
,
dan
mogen
er
variabelen
worden
meegegeven
aan
de
require(
)
ed
file
met
gebruik
maken
als
een
HTTP
GET
regel
(zie
voorbeeld
)
.
Dit
is
niet
precies
hetzelfde
als
require(
)
ing
een
bestand
en
het
laten
overnemen
van
de
variabele
scope
van
de
aanroepende
file
.
In
dit
geval
wordt
het
script
uitgevoerd
op
de
remote
server
en
het
resultaat
van
het
script
zla
opgenomen
worden
in
het
lokale
script
.
In
PHP
3
is
het
mogelijk
een
return
waarde
terug
te
geven
vanuit
een
require(
)
ed
bestand
,
zo
lang
dat
statement
optreed
binnen
de
globale
scope
van
het
require(
)
ed
bestand
.
Het
mag
niet
optreden
binnen
een
blok
(
d.w.z
.
binnen
accolades
({}
)
.
In
PHP
4
,
is
deze
mogelijkheid
echter
niet
meer
aanwezig
.
Als
je
dit
toch
wilt
,
zie
dan
de
include(
)
functie
.
Zie
ook
include(
)
,
require_once(
)
,
include_once(
)
,
readfile(
)
,
en
virtual(
)
.