![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 54 Pomógł: 0 Dołączył: 25.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam !
Spotkałem się ostatnio z pewnym frameworkiem Flex, w głównym katalogu były dwa pliki include_all.php i include_list.php : include_all.php
include_list.php
Z tego wynika, że wszystkie pliki są na początku ładowane i to budzi we mnie zastrzeżenia. Czy pliki powinny być na początku od razu wszystkie ładowane czy dopiero wtedy gdy dany jest potrzebny ? Pozdrawiam Darektbg |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
siemakuba:
Cytat Wszystkie instrukcje require czy require_once znalezione w kodzie w czasie kompilacji zostaną wykonane i pliki zostaną faktycznie załączone. Nawet jeśli taka instrukcja znajduje się wewnątrz instrukcji warunkowej dla której warunek nie jest spełniony, plik zostanie faktycznie załączony. Wynika z tego, że jakiekolwiek dynamiczne ładowanie można zbudować tylko w oparciu o include i include_once. Totalne bzdury: 1. w manualu pisze ze require i include zachowuja sie identycznie, rozni je jedynie typ bledu wyrzucanego w momencie nie znalezienia pliku. 2. wez sprawdz, wszystkie autoloadery przestaly by dzialac bo w nich jest kod typu:
3. powiedz mi jaki plik zostanie zalaczony w czasie KOMPILACJI: ? Zaden, bo zostanie zaladowany w czasie interpretacji, bo dopiero wtedy bedzie znana wartosc zmiennej $costam darektbg: Masz watek o autoloaderach, chyba nawet w php Pro. Jesli ladujesz wszystko na raz to niepotrzebnie ladujesz czesc plikow (przy zalozeniu ze nie wszystkich zawsze potrzebujesz), ale pliki ladowane od razu szybciej sie laduja Jesli ladujesz pojedynczo, na rzadanie (autoloaderem), to tracisz czas na przelaczaniu sie php miedzy wykonywaniem skryptu a kompilacja dolaczanych plikow, ale zyskujesz przez niezalaczanie niepotrzebnych plikow. Kompromisem zdaje sie byc (opisane przeze mnie a wykonane przez hwao -- w tamtym watku o autoloaderach) polaczenie obu rozwiazan -- na sztywno ladowanie plikow zawsze wykorzystywanych, a te zalezne od requestu ladowanie autoloaderem. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 28.09.2025 - 19:30 |