Thomas P wrote in dk.edb.internet.webdesign.serverside.php:
> hvordan kan jeg få min funktion til at bruge variablerne selvom de ikke er
> deklererede inde i selve funktionen ?
Overvej først om det i virkeligheden er det du har lyst til at gøre.
Hvis du f.eks. skal tilgå en af PHPs satte variabler, er det nogenlunde
forsvarligt at gøre det vha. 'global' keywordet:
function myHost() {
global $HTTP_HOST;
return "
http://$HTTP_HOST/";
}
Bemærk at 'global' importerer variablen til funktionens scope, hvorfor det
også kan lade sig gøre at lave følgende (pas på: Det er djævelen):
function myHost() {
global $HTTP_HOST;
$HTTP_HOST = "
http://$HTTP_HOST/";
}
Hvis man endelig finder fornøjelse ved at modificere globale variabler, er
den bedste metode at give variablen med som argument til funktionen som
'pass-by-reference' i stedet for 'pass-by-value'. Dette gøres ved at sætte
et '&' foran variabelnavnet.
function myHost(&$HTTP_HOST) {
$HTTP_HOST = "
http://$HTTP_HOST/";
}
/A
--
Brug Validator service:
http://www.html.dk/validator
- Tast din URL én gang, og validér dokumentet hos 12 validatorer
- Understøtter HTML, CSS og søgemaskineoptimering