Hallo PHP-ers,
Allereerst, wat algemene informatie:
PHP-versie: 4.3.11
PHP-config: Standaard php.ini (Fedora 3 installatie)
Ik ben zelf redelijk bekend met java en de principes van OOP. Ik ben een webapplicatie aan het ontwikkelen, althans, voorlopig nog de basis. Dit doe ik in PHP, vooral omdat ik afhankelijk ben van andere mensen. Ik wil de webapplicatie object georienteerd maken, omdat ik dit principe erg goed vind en simpelweg omdat dit een groot project gaat worden (in de zin van hoeveelheid code).
Maargoed, to the point:
STEL we hebben 2 klassen, namelijk dbConnection en errorLogger (dit is fictief dus). In de klasse dbConnection wil ik dat errors afgehandeld worden door errorLogger. Dit betekent dat dbConnection een instantie moet 'hebben' van errorLogger. Hoe gebeurt dit in PHP? Ik wil niet een nieuwe instantie van errorLogger aanmaken in dbConnection.
Het volgende heb ik geprobeerd, en werkt niet:
Ik neem aan dat hier een standaard manier voor is in PHP. Ik heb google afgespeurd naar goede tutorials, maar bijna al deze tutorials behandelen slechts de basis, ook php.net.
Ik hoop dat iemand mij kan helpen, alvast bedankt.
Erik
Allereerst, wat algemene informatie:
PHP-versie: 4.3.11
PHP-config: Standaard php.ini (Fedora 3 installatie)
Ik ben zelf redelijk bekend met java en de principes van OOP. Ik ben een webapplicatie aan het ontwikkelen, althans, voorlopig nog de basis. Dit doe ik in PHP, vooral omdat ik afhankelijk ben van andere mensen. Ik wil de webapplicatie object georienteerd maken, omdat ik dit principe erg goed vind en simpelweg omdat dit een groot project gaat worden (in de zin van hoeveelheid code).
Maargoed, to the point:
STEL we hebben 2 klassen, namelijk dbConnection en errorLogger (dit is fictief dus). In de klasse dbConnection wil ik dat errors afgehandeld worden door errorLogger. Dit betekent dat dbConnection een instantie moet 'hebben' van errorLogger. Hoe gebeurt dit in PHP? Ik wil niet een nieuwe instantie van errorLogger aanmaken in dbConnection.
Het volgende heb ik geprobeerd, en werkt niet:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| <? class errorLogger{ *wat hier gebeurt doet er niet toe* } class dbConnection{ var $eLogger; function dbConnection($logingegegevens_enzo,$eLogger){ $this->eLogger = $eLogger; $this->eLogger->log("een error"); // Ja, de functie 'log' bestaat } } $eLogger = new errorLogger(); $dbcon = new dbConnection("inloggegens enzo",$eLogger); |
Ik neem aan dat hier een standaard manier voor is in PHP. Ik heb google afgespeurd naar goede tutorials, maar bijna al deze tutorials behandelen slechts de basis, ook php.net.
Ik hoop dat iemand mij kan helpen, alvast bedankt.
Erik