pulse Skrevet 15. august 2009 Del Skrevet 15. august 2009 (endret) Hei! Jeg ønsker å sette en variable globalt, på link linje med $_GET, $_POST osv. Slik at den kan nås inni funksjoner uten å måtte bruker global $var eller $GLOBALS['var']. Noen som vet hvordan? Endret 15. august 2009 av pulse Lenke til kommentar
Ernie Skrevet 15. august 2009 Del Skrevet 15. august 2009 (endret) Du bruker global for å hente de inn i funksjoner etc. F.eks.: $var = 1; function funksjon() { global $var; $var++; } funksjon(); echo $var; Dog, bruk av globale variabler i funksjoner etc. er litt fy-fy. Endret 15. august 2009 av Ernie Lenke til kommentar
pulse Skrevet 15. august 2009 Forfatter Del Skrevet 15. august 2009 Du bruker global for å hente de inn i funksjoner etc. Som jeg sa i første posten, hvorden setter jeg en variabel global sånn at jeg -ikke- må bruke global eller lignende for å hente den inn... Lenke til kommentar
Ernie Skrevet 15. august 2009 Del Skrevet 15. august 2009 Ehhh ... kanskje en ide å lese posten litt nøyere først Vel, slik variable scope i PHP er bygget opp er det ikke mulig. Det kan nok ha litt med at globale variabler i funksjoner er fy-fy i og med at det medfører mindre lesbar kode. Lenke til kommentar
pulse Skrevet 15. august 2009 Forfatter Del Skrevet 15. august 2009 Ehhh ... kanskje en ide å lese posten litt nøyere først Vel, slik variable scope i PHP er bygget opp er det ikke mulig. Det kan nok ha litt med at globale variabler i funksjoner er fy-fy i og med at det medfører mindre lesbar kode. Var det jeg var redd for, har googlet og søkt mye, uten å finne noe svar jeg øsnket. Så da sitter jeg igjen med to alternativer: 1. Bruke konstanter istedetfor 2. Sette variablen som en del av arrayet $_SERVER Så da er vel saken egentlig løst. Takker Lenke til kommentar
Alex Moran Skrevet 15. august 2009 Del Skrevet 15. august 2009 3. Eller revurdere hele systemet. Lenke til kommentar
pulse Skrevet 15. august 2009 Forfatter Del Skrevet 15. august 2009 3. Eller revurdere hele systemet. Tja.. Har du gode forslag? Her er saken: Jeg bruker en htaccess for å redirecte alle requests mot en index fil. La oss si adressen er http://mittdomene.no/~brukernavn/side/ Jeg trenger denne adressen for å f.eks legge til css/default.css Jeg ønsker ikke å hardkode den på noen måte da jeg skal kunne kopiere alle filer enkelt og greit andre steder. Så jeg ønsker å ha denne tilgjengelig på lik måte overalt sånn at det er lettere å kopiere kode fra ett sted til ett annet, inn og ut av funksjoner, klasser osv.... Denne verdien er jo konstant for hele scriptet, alltid. Hvorfor burde det revurderes? Er det ikke slikt konstanter er til for? Lenke til kommentar
Alex Moran Skrevet 15. august 2009 Del Skrevet 15. august 2009 Jo, det kan du fint bruke konstanter til. Men uten å ha sett systemet eller vite hva hensikten var kunne man anta at en endring av systemet også kunne ha være en løsning. Lenke til kommentar
FraXinuS Skrevet 15. august 2009 Del Skrevet 15. august 2009 Du kan bruke en klasse med statiske variabler, da kan de nås over alt. class G { public static $v; } G::$v = 'Hallo!'; function f() { echo G::$v; } Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå