![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 48 Dołączył: 2.11.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Zastanwiam się na użyciem __autoload w moim nowy projekcie. Wiem, że na php pro jest wątek na temat optymalizacji __autoload, ale mi zależy na prostym rozwiązaniu bo i projekt jest mały w porywach do średniego.
zrobiłem coś takiego jak poniżej - proste, że aż boli, ale o to chodzi:
Jak widać rozwiązanie polega na wszytaniu wszystkich potencjalnych katalogów, w których znajdują się klasy php i następnie przeszukaniu ich w poszukiwaniu danej klasy. Docelowo w projekcie będzie jakieś +/- 200 klas w 8-10 katalogach. Czy to rozwiązanie jest "ok" czy raczej niezbyt racjonalne - chodzi oczywiście o wydajność. Nie wiem jaki jest koszt przeszukania kilku katalogów - może lepiej zrobić mniej katalogów? Co o tym myślicie. Dodam, że wolałbym uniknąć mapowania plików w tablicach itp - chodzi mi o bardzo proste i w miarę wydajne rozwiązanie. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 48 Dołączył: 2.11.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Sam nie wiem, generalnie chodziło mi o to, że u mnie autoloader to w zasadzie kontener na mapę scieżek. Funkcja __autoload okresla wzor budowy pliku php i sciezki - nie chciałem też za każdym razem przekazywać wszystkich scieżek do Autoloadera, skoro i tak będzie z nich korzystał sporadycznie. No ale to taki szczegół. Twoje podejście jest bardziej zgodne z paradygmatem obiektowym.
//edti czy ja dobrze rozumiem ze ty za pomoca funkcji eksport() zwracasz tablice ze sciezkami. Bo tak sie zastanawiam, co się dzieje jak zmieniasz polozenie katalogu. U mnie obiekt jest odpowiedzialny za to czy dany plik istnieje -> jesli nie istnieje we wskazanej lokalizacji to autaomatycznie lista sciezek jest aktualizowana. Jak to działa u Ciebie? Ten post edytował athabus 25.08.2006, 10:26:00 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 11:46 |