![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zablokowani Postów: 46 Pomógł: 0 Dołączył: 12.01.2006 Ostrzeżenie: (10%) ![]() ![]() |
Czy ktos z Was ma jakoś fajnie rozwiązaną fukcję __autoload od ładowania klas porozrzucanych po róźnych katalogach?
Powiedzmy, że mam taką strukturę katalogów: /classes/a/ /classes/b/ /classes/c/ /libraries/ index.php I teraz w pliku index.php mam użytą funkcję __autoload. Jak zrobić, aby była uniwersalna i radziła sobie z odnajdywaniem odpowiedniej klasy w tych katalogach? Mam na razie w głowie dwa rozwiązania: Szukamy klasy: TestowaKlasa
a) Pobieranie lokalizacji klasy
b) Wyszukiwanie wg nazwy klasy Klasa nazywa się: Classes_B_TestowaKlasa i na podstawie jej nazwy robijam na lokalizację i nazwę. Macie jakies inne, lepszejsze rozwiązania? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Ja nie bardzo rozumiem koncepcję założeń; czyli jak, Ty nie wiesz, gdzie dana klasa się znajduje? Nie rozumiem, do czego miałoby to służyć? I nie widzę tu nic specyficznego dla php 5, więc pozwolisz, że przeniosę.
|
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
To juz bylo, wiele pomyslow itd : http://forum.php.pl/index.php?s=&act=ST&f=13&t=26107
|
|
|
![]()
Post
#4
|
|
Grupa: Zablokowani Postów: 46 Pomógł: 0 Dołączył: 12.01.2006 Ostrzeżenie: (10%) ![]() ![]() |
Cytat(kszychu @ 2006-03-31 12:45:27) Ja nie bardzo rozumiem koncepcję założeń; czyli jak, Ty nie wiesz, gdzie dana klasa się znajduje? Nie rozumiem, do czego miałoby to służyć? I nie widzę tu nic specyficznego dla php 5, więc pozwolisz, że przeniosę. Jak to nie widzisz nic specyficznego? Przecież funkcja magiczna __autoload jest dostępna tylko w php 5! Oj... brak znajomości tematu! Polecam spowrotem przenieść post do odpowiedniego działu! A odpowiadając na Twoje pierwsze pytanie, to ja wiem gdzie klasa się znajduje! Ale nie w tym problem! Problem, aby to funkcja __autoload wiedziała gdzie są klasy, a nie ja (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ten post edytował eMartio 31.03.2006, 19:21:11 |
|
|
![]()
Post
#5
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
eMartio: przeczytaj ten watek co ci podalem: sa tam opisane rozwiazania typu:
generator tablicy typu ( 'NazwaKlasy' => '/loka/lizac/ja.php ): + wykorzystanie tej tablicy tak jak ty to robisz. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 17:51 |