![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 535 Pomógł: 27 Dołączył: 3.05.2005 Ostrzeżenie: (20%) ![]() ![]() |
Witam. Jestem w trakcie projektowania swojego pierwszego poważnego framweworka którego mam zamiar używać w swoich aplikacjach. Struktura katalogów i plików jest identyczna jak w ZF czyli:
aplication - controllers - models - views library public Zastanawia mnie jak wykonać w takim systemie tzw. autoload? Myślałem nad stworzeniem dodatkowego kontrolera który przejmował by za mnie ten problem. Działało by to w to w ten sposób:
Loader ładował by potrzebny plik z odpowiednią klasą i zwracał jej obiekt. Jak wy rozwiązujecie taki problem ? Psuje kod, miało być: $myClass = loader::getInstance('aplication_models_myClass'); Ten post edytował wlamywacz 21.09.2008, 16:08:33 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 453 Pomógł: 22 Dołączył: 20.09.2004 Skąd: Kraków - NH - Ostrzeżenie: (0%) ![]() ![]() |
u mnie autoload opiera się na stworzonej mapie plików. używając __autoload() lub spl_autoload_register() ustawiam używanie mojego loadera. mapa klas jest tworzona za pierwszym użyciem lub gdy plik nie istnieje (update). później za pomocą nazwy klasy ładowany jest plik. oczywiście założeniem jest, że nazwa klasy to nazwa pliku.
jeżeli wzorujesz się na ZF to możesz stworzyć taki loader jak tam istnieje czyli nazwa pliku jest ścieżką do niego. niestety nazwy klas bywają długie ale za to wiadomo co i skąd się bierze. jeżeli jesteś ciekawy mogę zaprezentować moją klasę loader`a. nie wklejam jej tutaj bo ostatnio jest problem na forum z "::", a klasa opiera się na metodach statycznych i kod może dziwnie wyglądać. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 21:42 |