PHP: include vs. require

Dieses Thema PHP: include vs. require im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von Michael_B, 19. Mai 2004.

Thema: PHP: include vs. require Hi wo eigentlich besteht genau der Unterschied zwischen include und require bei PHP? Und was bedeutet dann...

  1. Hi

    wo eigentlich besteht genau der Unterschied zwischen include und require bei PHP? Und was bedeutet dann include_once und require_once?

    Das was ich bisher darüber gelesen habe, hab ich nicht wirklich verstanden. Wär schön, wenn mir jemand das mal erklären könnte. In der hinsicht bin ich echt Laie... ::)
     
  2. _once steht für einmal, d.h. es wird nur einmal eingebunden/verlangt

    include(_once) -> wird versucht einzubinden, wenns net geht kriegste nen error, script läuft weiter
    require(_once) -> wird versucht einzubinden, wenn nicht da, bekomsmte fatal error, script wird nicht ausgeführt.
     
  3. Hiho,

    danke schonmal. Noch was genauer: Wird require mit einem fatal error + skriptabbruch reagieren, auch wenn z. b. ein Syntaxfehler in der verlangten Datei ist, oder nur dann, wenn es die Datei selbst betrifft (also z. B. wenn ich eine Datei require, die nicht vorhanden ist)?

    @xeen: könntest du mir zum _once mal ein kleines beispiel geben? Ich hab noch nicht gecheckt, was es bedeutet, wenn eine Datei nur einmal eingebunden bzw. verlangt wird... wenn ich in nem Skript (z. B. index.php) ganz oben erstmal meine separaten Funktionen (functions.php) einbinde, mach ich das doch auch nur einmal...

    Fühl mich langsam von meinem Intellekt betrogen :-[ ;D

    Grüße und nen schönen Vatertag noch

    Michael.
     
  4. require prüft nur ob die datei vorhanden ist. hast du einen syntaxfehler in der datei kriegste sowieso fatal error.

    include_once(test.php);
    include_once(test.php);
    include_once(test.php);
    include_once(test.php);

    wird nur einmal eingebunden


    angenommen du hast ein script bei dem du in einer datei eien suchbox hast. diese soll nur einmal angezeigt werden. Diese soll eigentlich immer unten sein, aber manchmal willst du sie auch oben haben:

    if($oben) include_once(suche.php);
    //text+funktionen

    //wenn jetzt noch keine suche war..
    include_once(suche.php);
    // wird eingebunden ansonsten net


    Das praktischste an include once ist: Du hast eine Oberdatei und lädst inhalte anderer Dateien per require/include.
    index.php -> die datei in die included wird (wenn eingeloggt wird zugang gewährt ansonsten pw abfrage)
    geschützte_datei.php -> datei darf nur aufgerufen werden mit gültigem login

    wenn jemand die geschützte_datei.php jetzt direkt aufruft kommt er ja an sie ran ohne eingeloggt zu sein. du bindest in beide dateien z.b. per require_once eine login.php ein die sicherstellt das man eingeloggt ist.
    Vorteile dadurch (gegebüber require()):
    - Die Datei wird nur einmal bearbeitet -> spart ressourcen
    - wenn Funktionen in der Datei defeniniert sind dann gibt's keine fehler.
     
  5. Aha... jetzt ist der Groschen gefallen *KLING!!!*

    Dankeschön....
    Schönes (vielleicht sogar verlängertes) Wochenende

    M.
     
Die Seite wird geladen...

PHP: include vs. require - Ähnliche Themen

Forum Datum
PHP5 mitm Apache unter Debian will keine Dateien Includen ?:-( Windows XP Forum 27. Okt. 2008
include zentrieren Webentwicklung, Hosting & Programmierung 24. Juli 2008
Server Side Include Windows XP Forum 18. Apr. 2007
PHP: INCLUDE zum dynamischen Einfügen von Inhalten Webentwicklung, Hosting & Programmierung 13. Apr. 2007
php include wird nicht ausgeführt Webentwicklung, Hosting & Programmierung 28. Jan. 2007