postanowiłem zrobić sobie pierwszy 'wzorzec projektowy' oparty o programowanie obiektowe.
Mój problem polega na tym, że mam sobie klase główną 'df' i chce zrobić coś takiego:
każda podklasa (np newsy) dziedziczy sobie tą główną df i korzysta z klas df (np db, file, validator) które są automatycznie przyłączane gdy występuje taka potrzeba.
podklasa ma 'poprosić' o (klase df) zwrócenie obiektu klasy. np:
class newsy extends df{ public function pobierzNewsa($id){ $news = $db->getRecord('newsy', $id); //powyżej, jeśli obiekt klasy db został już wcześniej utworzony to ma go zwrócić //w przeciwnym wypadku ma zaincludować plik z klasą i utowrzyć nowy obiekt } }
a tutaj klasa df:
class df{ //obiekty klas zadeklarowanych public $objects; //pobieranie / tworzenie obiektów public function __get($name){ if($this->objects[$name]) return $this->classes[$name]; else{ $file = 'df_classes/'.$name.'.php'; include($file); $this->objects[$name] = new $name; return $this->objects[$name]; }else return false; } } }
Wie ktoś może jak zrobić żeby to działało?