07. marts 2009 - 14:44
Der er
3 kommentarer og 1 løsning
Globals virker IKKE med create_function()
Støtte for nylig over følgende: $func = create_function('', ' function test() { global $var; var_dump($var); } $var = "Tekst"; test(); '); $func(); Følgende udskriver 'NULL', altså ikke det ønskede resultat. Flytter man til gengæld $var = "Tekst"; uden for create_function() virker det. Nogen der har en forklaring?
Annonceindlæg fra Computerworld
07. marts 2009 - 15:40
#2
Ja okay, lidt en bummert herfra. Når $var sættes, sker det jo også inde i en funktion og den bliver derved kun oprettet i funktionens scobe. Smid et svar, hvis du ønsker point
07. marts 2009 - 15:43
#3
Nej tak. Der sker nu også noget "sjovt" med din konstruktion, hvis du kalder den to gange: $func(); $func(); PHP er nemlig ikke beregnet til at erklære funktioner i funktioner. Prøv selv. Sproget PHP er faktisk lidt af en underlig fisk ;)