Goedemiddag,
Ik ben gisteren begonnen met een website die ik aan het bouwen ben in de taal PHP. Nu heb ik al ervaring met betrekking tot statische functies, classes en variabele in andere talen zoals C# alleen kom ik er in PHP nu net even niet uit.
Ik zit het met volgende. Ik heb een class gemaakt genaamd config met hierin een statische functie parseIniFile() zoals hieronder weergegeven:
Nu roep ik deze code aan in mijn index op de volgende manier:
Bij de eerste regel wordt inderdaad keurig het configuratie bestand ingelezen. Zet ik een echo in de statische functie die dus het bestand inleest dan werkt het prima. Maar als ik in mijn index de statische functie getDatabaseServer() aanroep, dan is plotseling de $config variabele leeg.
Is dit normaal in PHP?
Want ik heb in C# toch wel vaker zulke constructies gemaakt dat je bijvoorbeeld een statische database class hebt en die kun je (zolang het programma draait) oneindig vaak gebruiken nadat er een verbinding is gelegd.
Ter informatie:
Ik draai op PHP 5.3.0.
Ik ben gisteren begonnen met een website die ik aan het bouwen ben in de taal PHP. Nu heb ik al ervaring met betrekking tot statische functies, classes en variabele in andere talen zoals C# alleen kom ik er in PHP nu net even niet uit.
Ik zit het met volgende. Ik heb een class gemaakt genaamd config met hierin een statische functie parseIniFile() zoals hieronder weergegeven:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| Class Config { private $config; public static function parseIniFile() { $config = parse_ini_file("path/naar/ini/file", true); } public static function getDatabaseServer() { return $config['dbase']['server']; } } |
Nu roep ik deze code aan in mijn index op de volgende manier:
PHP:
1
2
| Config::parseIniFile(); echo Config::getDatabaseServer(); |
Bij de eerste regel wordt inderdaad keurig het configuratie bestand ingelezen. Zet ik een echo in de statische functie die dus het bestand inleest dan werkt het prima. Maar als ik in mijn index de statische functie getDatabaseServer() aanroep, dan is plotseling de $config variabele leeg.
Is dit normaal in PHP?
Want ik heb in C# toch wel vaker zulke constructies gemaakt dat je bijvoorbeeld een statische database class hebt en die kun je (zolang het programma draait) oneindig vaak gebruiken nadat er een verbinding is gelegd.
Ter informatie:
Ik draai op PHP 5.3.0.