/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Funktioner og konstanter udenfor
Fra : Bertel Lund Hansen


Dato : 18-06-05 08:59

Hej alle

Jeg har en fil som inkluderes i flere andre filer. Deri definerer
jeg nogle konstanter og nogle funktioner. Så langt så godt.

Funktionerne skal bruge nogle af konstanterne, og med min
begrænsede viden kan jeg ikke se anden mulighed end at definere
dem inden for funktionen - men det er upraktisk hvis jeg senere
vil ændre dem.

Er der en måde så jeg indefra kan referere til konstanter uden
for en funktion?

--
Bertel
http://bertel.lundhansen.dk/   Fiduso: http://fiduso.dk/

 
 
Thomas Finnerup (18-06-2005)
Kommentar
Fra : Thomas Finnerup


Dato : 18-06-05 09:10

On Sat, 18 Jun 2005 09:58:40 +0200, Bertel Lund Hansen
<nospamfilius@lundhansen.dk> wrote:

> Er der en måde så jeg indefra kan referere til konstanter uden
> for en funktion?

Konstanter er globale, så der bør ikke være noget problem.


Venligst
Thomas

Bertel Lund Hansen (18-06-2005)
Kommentar
Fra : Bertel Lund Hansen


Dato : 18-06-05 09:23

Thomas Finnerup skrev:

> Konstanter er globale, så der bør ikke være noget problem.

Gælder det også et konstant array?

Eksempel:
$doblettekstsmall = array ('udoblet','doblet','redoblet');

Dette array er tomt inden i min funktion.

--
Bertel
http://bertel.lundhansen.dk/   Fiduso: http://fiduso.dk/

Bertel Lund Hansen (18-06-2005)
Kommentar
Fra : Bertel Lund Hansen


Dato : 18-06-05 09:35

Bertel Lund Hansen skrev:

> Dette array er tomt inden i min funktion.

Simple konstanter - tekst eller tal - er også tomme.

--
Bertel
http://bertel.lundhansen.dk/   Fiduso: http://fiduso.dk/

Bertel Lund Hansen (18-06-2005)
Kommentar
Fra : Bertel Lund Hansen


Dato : 18-06-05 09:52

Bertel Lund Hansen skrev:

> Simple konstanter - tekst eller tal - er også tomme.

Nu er jeg klar over at konstanter er noget specielt. Problemet
består imidlertid fordi jeg skal bruge konstante arrays.

--
Bertel
http://bertel.lundhansen.dk/   Fiduso: http://fiduso.dk/

Per Thomsen (18-06-2005)
Kommentar
Fra : Per Thomsen


Dato : 18-06-05 10:39

Bertel Lund Hansen wrote:
> Bertel Lund Hansen skrev:
>
>
>>Simple konstanter - tekst eller tal - er også tomme.
>
>
> Nu er jeg klar over at konstanter er noget specielt. Problemet
> består imidlertid fordi jeg skal bruge konstante arrays.
>

define('DOBLETTEKST', 'udoblet,doblet,redoblet');

og inde i funktion:

$dobletTekst = explode(',', DOBLETTEKST);

Sådan plejer jeg at gøre det, det kan være du kan blive inspireret af det.


Har ikke lige prøvet, men man kan sikkert også gøre således:

define('DOBLETTEKST', serialize(array('udoblet','doblet','redoblet')));

og inde i funktionen:

$dobletTekst = unserialize(DOBLETTEKST);

MVH Per Thomsen,
http://www.pert.dk/

Bertel Lund Hansen (18-06-2005)
Kommentar
Fra : Bertel Lund Hansen


Dato : 18-06-05 13:17

Per Thomsen skrev:

> define('DOBLETTEKST', 'udoblet,doblet,redoblet');

> og inde i funktion:

> $dobletTekst = explode(',', DOBLETTEKST);

Tak, det er også en god fidus.

--
Bertel
http://bertel.lundhansen.dk/   Fiduso: http://fiduso.dk/

Geert Lund (18-06-2005)
Kommentar
Fra : Geert Lund


Dato : 18-06-05 09:38

Bertel Lund Hansen wrote:

>>Konstanter er globale, så der bør ikke være noget problem.

> Gælder det også et konstant array?
> Eksempel:
> $doblettekstsmall = array ('udoblet','doblet','redoblet');

> Dette array er tomt inden i min funktion.

Yep, det vil have sit eget isolerede space inde i funktionen medmindre
du gør et af følgende:

1) deklarerer variablen som global konstant - inde i din funktion laver
du følgende sætning i starten af funktionen:

GLOBAL $doblettekstsmall;

Hvorefter funktionen vil arbejde videre med det globale array.


2) du benytter dig af PHPs superglobals - specielt tænker jeg her på
$GLOBALS[] arrayet ( http://dk2.php.net/globals ) inde i din funktion.

--
Med venlig hilsen
Geert Lund


Bertel Lund Hansen (18-06-2005)
Kommentar
Fra : Bertel Lund Hansen


Dato : 18-06-05 10:04

Geert Lund skrev:

> GLOBAL $doblettekstsmall;

Tak, det løste problemet.

--
Bertel
http://bertel.lundhansen.dk/   Fiduso: http://fiduso.dk/

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste