Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] include
El Wieczor
post
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 4.05.2007

Ostrzeżenie: (0%)
-----


Czy dobrze rozumiem, że:

Kod
if (warunek)
  include(plik);


nie spowoduje odczytania pliku, jeśli warunek nie zajdzie?
Czy może jednak i tak wczyta cały tekst z pliku, dołączy do kodu i po prostu go nie wykona.

Mam dużo includów w kodzie i mało wydajnie by było, jeśli czytałby wszystkie pliki a i tak nic nie wykonywał.

Ale jeśli dobrze myślę, to include to zwykła funkcja, więc jeśli warunek nie zachodzi, to nawet nie bierze pod uwagę wykonania tej funkcji i dołączenia kodu.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
El Wieczor
post
Post #2





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 4.05.2007

Ostrzeżenie: (0%)
-----


Cytat(sf @ 4.05.2007, 15:17:28 ) *
wczyta tylko te, które spełniają warunki

swoją drogą powinieneś pomyśleć nad czymś elegantrzym (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) bo co za dużo to nie zdrowo


W jakim sensie niezdrowo? Że kod zagmatwany, czy nie jest to najwydajniejszy sposób?
Ja mam 100 plików do includowania a za jednym wykonaniem skryptu jedynie kilka spełnia warunki.
Poza tym muszę includować, bo tak jeden plik php miałby 6000 linii kodu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

No chyba, że da się to zrobić jakoś inaczej, nie wiem, obiektowo, czy coś...
Ale jeśli chodzi tylko o spoób zapisu, to mi odpowiada i łapię się w tym na razie.


EDIT :::

Notatka: Począwszy od PHP 4.0.2, zachowanie instrukcji jest następujące: require() będzie zawsze próbować odczytać plik docelowy, nawet jeśli linia w której ona się znajduje nigdy nie zostanie wykonana. Instrukcja warunkowa nie wpływa na działanie require(). Jednakże, jeśli linia, w której pojawia się require() nie zostaje wykonana, zawartość pliku wczytywanego też nie zostaje wykonana. Podobnie, instrukcje pętli nie wpływają na działanie require(). Chociaż kod zawarty w pliku docelowy wciąż jest podmiotem pętli, require() działa tylko raz.

Cytat z manuala. Nie ma nic odnośnie include, ale to przecież to samo, tylko różnią się typem zwracanego błędu. I co Wy na to?

Ten post edytował El Wieczor 2.06.2007, 16:35:16
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 13:55