![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 518 Pomógł: 18 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie.
Poprosze o wsparcie mojej wiedzy gdyz nie moge sobie wyobrazic pewnych rzeczy. Ogolnie wiem jak dziala include i include_once ale w praktyce nie wiem kiedy je stosowac. Czy ktos moze "łopatologicznie" wytlumaczyc kiedy i w jakich wypadkach sie je stosuje. Napisalem swoj prosty CMS jednak uzywam w nim tylko zwykle include a domyslam sie ze jak uzyje include_once to moze zwiekszyc sie wydajnosc cmsa. Moj ogolny schemat dzialania jest taki: - include konfiguracja strony z pliku; - tworzenie polaczenia z baza; - include wszystkich funkcji serwisu (ladowanie modulow, generowanie komunikatow, generowanie elementow dynamicznych); - generowanie wszystkich elementow dynamicznych (daty, tytuly, statystyki itp) - include templatki; - generowanie wygladu strony. I teraz mysle sobie tak (prosze o sprostowanie mojego myslenia): plik index.php jest czytany zawsze wiec konfiguracja z pliku tez musi byc inkludowana zawsze. Bez funkcji serwis tez nie bedzie dzialal wiec tez trzeba inkludowac. Templatka tak samo... wiec co z tego moze byc inkludowane jednorazowo... Prosze rowniez o wytlumaczenie czegos takiego skoro juz raz wyswietlilem taka strone, to po kliknieciu w dowolny link jakie elementy sa odswiezane ? czy calosc jest przeladowana ? czy moze serwer "pamieta" jakies fragmenty kodu (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? Moze ten temat powinien trafic do przedszkola ale mam nadzieje ze komus tez troche sie wyjasni. Za wszelkie info z gory dziekuje i pozdrawiam Grzegorz |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
- include wszystkich funkcji serwisu (ladowanie modulow, generowanie komunikatow, generowanie elementow dynamicznych); To napisz sobie funkcje i umieść ją sobie w pliku a poźniej
Dostaniesz piękny komunikat o blędzie coś w stylu Kod Canot redeclarate ....... W tym przypadku include_once wchodzi w gre Jeżeli wszystkie pliki podłączasz pod index.php to w nim wystarczy raz zaincludować plik konfiguracyjny nie ma potrzeby żeby go dodawać za każdym razem. A przy odświeżaniu strony cały kod php jest przetwarzany raz jeszcze. Ten post edytował skowron-line 3.06.2009, 07:26:12 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 518 Pomógł: 18 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli wszystkie pliki podłączasz pod index.php to w nim wystarczy raz zaincludować plik konfiguracyjny nie ma potrzeby żeby go dodawać za każdym razem. A przy odświeżaniu strony cały kod php jest przetwarzany raz jeszcze. No wlasnie caly kod jest przetwarzany raz jeszcze ale z zainkludowanymi wczesniej konfigami i modulami czy serwer bedzie inkludowal wszystko raz jeszcze od nowa ? Ten post edytował elmozaur 3.06.2009, 07:39:30 |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
include_once dotyczy danego zadania do strony.W danym konkretnym zadaniu include_once wykona sie raz
Kazde kolejne zadanie do strony (aplikacji na serwerze) powoduje przetwarzanie wszystkiego na nowo |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 518 Pomógł: 18 Dołączył: 21.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
nie, to wszystko zalezy.
Jesli chcesz by dany skrypt includowal sie za kazdym razem, gdy go includujesz, to uzywasz include. (np. zawiera jakas tabelke, ktora chcesz wyswietlic za kazdym razem gdy robisz include) Gdy chcesz by dany skrypt zaincludowal sie tylko raz, to uzywasz include_once. (np. zawiera funkcje - a deklaracja funkcji moze byc tylko raz w skrypcie) proste jak cep (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli chcesz sobie wyświetlić np. system newsów i masz w pliku a.php zdefiniowany układ elementów ( tytuł, treść, autor, data ) to pobierając wszystkie newsy z bazy będziesz je wyświetlał w pętli i wtedy musisz użyć include ponieważ gdy użyjesz include_once wtedy wyświetl się tylko 1 dołączenie pliku mimo iż pętla obróci się powiedzmy 20 razy.
Ten post edytował skowron-line 3.06.2009, 08:15:40 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 11:02 |