Ik ben nog niet zo lang bezig met PHP, maar heb al wel wat ColdFusion-ervaring. In CF is het eenvoudig om een variabele beschikbaar te maken in alle pagina's van je applicatie. Je gooit namelijk gewoon "Application." voor de naam van je variabele, en hij heeft een applicatie-scope. Nu wil ik hetzelfde doen in PHP, namelijk het pad naar de root van mijn site in een variabele stoppen, deze één keer ergens instellen en in alle pagina's kunnen gebruiken. Is dit mogelijk in PHP en hoe zou ik dit dan kunnen doen? De handleiding is er niet echt duidelijk over.
Ja dat kan 
PHP:
Bron
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| #Global Namespace $test = '123'; $document_root = $_SERVER['DOCUMENT_ROOT']; testme(); testme2(); function testme() { echo $GLOBALS['test'] . "<BR />\n"; echo $_SERVER['DOCUMENT_ROOT'] . "<BR />\n"; } function testme2() { global $test; echo $test . "<BR />\n"; } |
[ Voor 28% gewijzigd door glashio op 23-08-2005 13:25 ]
> Google Certified Searcher
> Make users so committed to Google that it would be painful to leave
> C64 Gospel
> [SjoQ] = SjoQing
Ik kan je vraag op 2 manieren interpreteren.
1. Je wilt een variabele zetten en deze in andere pagina's nog uit kunnen lezen. In dit geval gebruik je inderdaad sessions.
2. Je wilt gewoon globale variabelen die je eenmaal kunt zetten (config) en die overal tot je beschikking hebben. In dit geval kun je natuurlijk gewoon een config include maken die je overal ingooit.
1. Je wilt een variabele zetten en deze in andere pagina's nog uit kunnen lezen. In dit geval gebruik je inderdaad sessions.
2. Je wilt gewoon globale variabelen die je eenmaal kunt zetten (config) en die overal tot je beschikking hebben. In dit geval kun je natuurlijk gewoon een config include maken die je overal ingooit.
Er is in php geen application scope. Je hebt alleen pagescope en session scope. Application scope kun je evenaren door je variabele te declareren in een bestand dat je overal in include, maar deze var is dan 'read only'. Het wijzigingen in deze variabele gelden alleen voor de page scope.
Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'
Ik denk dat die laatste optie van Bosmonster inderdaad de beste is voor wat ik wil. Thanks voor de tips! 
/edit en jij ook Janoz voor je addendum
/edit en jij ook Janoz voor je addendum
[ Voor 18% gewijzigd door Plux op 23-08-2005 13:57 ]
Pagina: 1