Is het mogelijk alle vars in een function global te maken? Het is zo lastig om bij functies die veel global vars gebruiken elke keer elke var apart op global te zetten
Over het algemeen zijn globale variabelen een teken van verkeerd ontwerp. Het kan soms wel heel erg handig zijn, dus vandaar dat dit wel kan, maar ik ben blij dat het niet zo heel gemakkelijk wordt gemaakt.Op donderdag 14 februari 2002 18:08 schreef R4NCOR het volgende:
Is het mogelijk alle vars in een function global te maken? Het is zo lastig om bij functies die veel global vars gebruiken elke keer elke var apart op global te zetten
Er is voorzover ik weet ook geen manier om die global te maken. Je kan misschien $GLOBAL_VARS (preciese naam moet je ff opzoeken) global maken en dan via die array alles benaderen.
De GET, POST en SESSION variabelen zijn (geloof ik) altijd beschikbaar dus die hoef je niet expliciet global te maken.
globale variabelen zijn vies
maak gewoon betere functie aanroepen
maak gewoon betere functie aanroepen
Doet iets met Cloud (MS/IBM)
Global zijn toch niet per definitie vies? Als je ze maar op een gestructureerde manier gebruikt. Persoonlijk gebruik ik globals alleen als 'constante' met configuratie instellingen. Dit zijn dat allerlei variabelen die alleen 1x in het begin van m'n scripts worden gedefineerd en vervolgens op meerdere plaatsen gebruikt. (Verder schrijf ik deze variabelen compleet in hoofdletters om ze duidelijk van de rest te onderscheiden.)
Maar volgens mij is het niet mogelijk om globale variabelen te defineren die automatisch bij elke functie worden meegenomen. Dan zul je toch echt bij elke functie aan moeten geven welke van die variabelen je nodig hebt.
Maar volgens mij is het niet mogelijk om globale variabelen te defineren die automatisch bij elke functie worden meegenomen. Dan zul je toch echt bij elke functie aan moeten geven welke van die variabelen je nodig hebt.
[18:54] <Prammenhanger> |HunterPro|eet
[18:55] <Prammenhanger> lijkt best op
[18:55] <Prammenhanger> |HunterProFeet
* Pelle *Op donderdag 14 februari 2002 18:24 schreef CyeZ het volgende:
Persoonlijk gebruik ik globals alleen als 'constante' met configuratie instellingen. Dit zijn dat allerlei variabelen die alleen 1x in het begin van m'n scripts worden gedefineerd en vervolgens op meerdere plaatsen gebruikt. (Verder schrijf ik deze variabelen compleet in hoofdletters om ze duidelijk van de rest te onderscheiden.)
http://www.php.net/define
Dat is dus precies waar ze define voor hebben uitgevonden.
Dat is ook niet wat ik bedoel.. Ik heb 1 functie die veel variabelen gebruikt. Bij die wil ik gewoon aangeven dat elke variabale in die funtie een globale variabele isOp donderdag 14 februari 2002 18:24 schreef CyeZ het volgende:
...
Maar volgens mij is het niet mogelijk om globale variabelen te defineren die automatisch bij elke functie worden meegenomen. Dan zul je toch echt bij elke functie aan moeten geven welke van die variabelen je nodig hebt.
Hmm ja, klopt. Maar ik heb nog niet kunnen vinden hoe ik dat met arrays kan gebruiken. Vandaar dat die define() niet altijd even nuttig is in gebruik. Dus kies ik ervoor om dat ding niet te gebruiken zodat m'n code consistent is.Op donderdag 14 februari 2002 18:54 schreef Pelle het volgende:
[..]
* CyeZ *
http://www.php.net/define
Dat is dus precies waar ze define voor hebben uitgevonden.
[18:54] <Prammenhanger> |HunterPro|eet
[18:55] <Prammenhanger> lijkt best op
[18:55] <Prammenhanger> |HunterProFeet
Wat je kunnen doen, is gebruik maken van de $GLOBALS[] arrays in PHP.Op donderdag 14 februari 2002 19:35 schreef R4NCOR het volgende:
[..]
Dat is ook niet wat ik bedoel.. Ik heb 1 functie die veel variabelen gebruikt. Bij die wil ik gewoon aangeven dat elke variabale in die funtie een globale variabele isNiet stuk voor stuk toewijzen.
zoiets bijvoorbeeld:
code:
1
2
3
4
| function Sum()
{
$GLOBALS["b"] = $GLOBALS["a"] + $GLOBALS["b"];
} |
Verder is er volgens mij geen makkelijke manier om te zorgen dat je al je variabelen die je in 1 functie gebruikt automatisch global worden.
[18:54] <Prammenhanger> |HunterPro|eet
[18:55] <Prammenhanger> lijkt best op
[18:55] <Prammenhanger> |HunterProFeet
het enige wat in mijn ogen legaal is om te globallen in php <4.1.x is $PHP_SELF de rest gewoon meegeven met functies of in objecten opslaan
Pagina: 1