Bekijk Volledige Versie : Re: Nieuwe variable binnen functie, hoe krijg ik die ook geldig buiten de functie
Erik Hensema
09/11/05, 15:15
Install http://support.microsoft.com/kb/900930 to read this message.
begin quote of Eduard Bekker (e.bekker@layout.nl):
> Stel ik heb
>
> function ingelogd($gebruiker,$iets)
> {
> if ($iets)
> {
> $ingelogd=true;
> }
> $iets++;
> return $iets;
> }
>
>
> Hoe zorg ik dan dat $ingelogd ook buiten deze functie als variabelde de
> waarde true behoudt?
zet bovenin je functie:
global $ingelogd;
En zorg dat je buiten je functie nog voordat je iets anders doet
(kortom: zo hoog mogelijk in je source) die variabele op false.
--
Erik Hensema (erik@hensema.net) ICQ# 8280101
Quoting-HOWTO: http://www.leerquoten.nl
Op Wed, 09 Nov 2005 14:07:37 +0000, schreef Erik Hensema:
> Install http://support.microsoft.com/kb/900930 to read this message.
> begin quote of Eduard Bekker (e.bekker@layout.nl):
>> Stel ik heb
>>
>> function ingelogd($gebruiker,$iets)
>> {
>> if ($iets)
>> {
>> $ingelogd=true;
>> }
>> $iets++;
>> return $iets;
>> }
>>
>>
>> Hoe zorg ik dan dat $ingelogd ook buiten deze functie als variabelde de
>> waarde true behoudt?
>
> zet bovenin je functie:
> global $ingelogd;
>
> En zorg dat je buiten je functie nog voordat je iets anders doet
> (kortom: zo hoog mogelijk in je source) die variabele op false.
Right. En hoort iemand dan niet even uit te leggen dat het gebruik van
globale variabelen eigenlijk af te raden is? :)
Erik Hensema
10/11/05, 09:45
Install http://support.microsoft.com/kb/900930 to read this message.
begin quote of nmp (address@is.invalid):
> Op Wed, 09 Nov 2005 14:07:37 +0000, schreef Erik Hensema:
>
>> zet bovenin je functie:
>> global $ingelogd;
>>
>> En zorg dat je buiten je functie nog voordat je iets anders doet
>> (kortom: zo hoog mogelijk in je source) die variabele op false.
>
> Right. En hoort iemand dan niet even uit te leggen dat het gebruik van
> globale variabelen eigenlijk af te raden is? :)
Nja, mits met mate toegepast zijn ze niet zo heel erg, vind ik.
Anders krijg je vreselijke functieaanroepen waarin je alle
variabelen meegeeft die anders globaal zouden zijn. Daarmee maak
je je source alleen maar minder leesbaar.
Echter, variabelen alleen globaal als ze ook echt een globale
betekenis hebben. En vaak semi-readonly: als je variabelen aan
gaat passen binnen een functie, dan moet dat buiten die functie
ook duidelijk zijn.
't Is een beetje zoals goto: in theorie wil je ze niet, in de
praktijk zijn ze soms handig en vergroten de leesbaarheid.
--
Erik Hensema (erik@hensema.net) ICQ# 8280101
Quoting-HOWTO: http://www.leerquoten.nl