Heim > Backend-Entwicklung > PHP-Tutorial > Der Unterschied zwischen Include-Dateien und Require in PHP (mit ausführlicher Erklärung)

Der Unterschied zwischen Include-Dateien und Require in PHP (mit ausführlicher Erklärung)

烟雨青岚
Freigeben: 2023-04-08 19:34:02
nach vorne
2534 Leute haben es durchsucht

Der Unterschied zwischen Include-Dateien und Require in PHP (mit ausführlicher Erklärung)

Der Unterschied zwischen include und require in PHP (einschließlich detaillierter Erklärung)

1 Verwendung von Syntax und Einführung

1. include()-Syntax:

include(/path/to/filename)
Nach dem Login kopieren

include()-Anweisung fügt eine Datei an der Stelle ein, an der sie aufgerufen wird. Durch das Einschließen einer Datei werden die Daten der angegebenen Datei an den Speicherort der Anweisung kopiert.

Sie können die Klammern ignorieren, wenn Sie include() verwenden. Wenn Sie include() in einer bedingten Anweisung verwenden, muss diese in Klammern des Anweisungsblocks oder von anderen Anweisungswrappern eingeschlossen werden.

2. include_once()-Syntax:

include_once(filename)
Nach dem Login kopieren

include_once()-Anweisung schließt die angegebene Datei während der Skriptausführung ein und führt sie aus. Dieses Verhalten ähnelt der include()-Anweisung. Der einzige Unterschied besteht darin, dass include_once() zunächst ermittelt, ob die Datei bereits eingebunden wurde.

3. require()-Syntax:

require(filename)
Nach dem Login kopieren

require() ist weitgehend identisch mit include, beide enthalten eine Vorlagendatei in require Sitzposition. Es gibt zwei wichtige Unterschiede zwischen require und include.

1. Unabhängig vom Speicherort von „require“ wird die angegebene Datei in das Skript eingefügt, wo „require“ erscheint. Selbst wenn „require“ beispielsweise in eine if-Anweisung eingefügt wird, die als „false“ ausgewertet wird, wird die angegebene Datei dennoch einbezogen.

2. Wenn „require“ fehlschlägt, wird die Ausführung des Skripts gestoppt, aber wenn „include“ verwendet wird, wird die Ausführung des Skripts fortgesetzt.

4. require_once()-Syntax:

require_once(filename)
Nach dem Login kopieren

require_once()-Anweisung schließt die angegebene Datei während der Skriptausführung ein und führt sie aus. Dieses Verhalten ähnelt der require()-Anweisung. Der einzige Unterschied besteht darin, dass require_once() zunächst ermittelt, ob die Datei bereits eingebunden wurde, und diese Einbindung ignoriert.

2 Zusammenfassung der Unterschiede

1. Der Unterschied zwischen include()- und require()-Anweisungen.

Beispiel 1

include('hello.php');
echo 'include test final!';//include报错,但是会继续执行,显示:include test final!
require('hello.php');
echo 'require test final!';//require报错,停止代码的执行。
Nach dem Login kopieren

Zusammenfassung:

⑴ include() generiert eine Warnung und das Skript wird weiter ausgeführt.

⑵ require() verursacht einen schwerwiegenden Fehler und das Skript wird nicht mehr ausgeführt.

Mit anderen Worten: Verwenden Sie require(), wenn Sie die Verarbeitung der Seite stoppen möchten, wenn eine fehlende Datei oder ein Fehler auftritt. Wenn Sie die Verarbeitung der Seite fortsetzen möchten, wenn ein Fehler auftritt, verwenden Sie include().

Beachten Sie, dass Syntaxfehler in Include-Dateien vor PHP 4.3.5 nicht zum Stoppen des Programms führten, ab dieser Version jedoch.

2. require() schließt Dateien trotzdem ein, während include() selektiv

Beispiel 2

<?php
 if(FALSE){
   require(&#39;x.php&#39;);
 }
 if(FALSE){
   include(&#39;s.php&#39;);
 }
?>
Nach dem Login kopieren

oben einschließen kann code: x.php wird definitiv enthalten sein, aber s.php wird definitiv nicht enthalten sein.

3. Der Unterschied zwischen include_once(), require_once() und include(), require()

include_once() ist derselbe wie require_once() und sollte Wenn dieselbe Datei während der Skriptausführung möglicherweise mehr als einmal eingebunden wird, möchten Sie sicherstellen, dass sie nur einmal eingebunden wird, um Probleme wie Funktionsneudefinitionen und Variablenneuzuweisungen zu vermeiden. Dies ist der Hauptunterschied zwischen include_once() und require_once() und include() und require().

Drei Probleme, die Aufmerksamkeit erfordern

1. Pfadprobleme

besonders verschachtelte Einschlüsse Achten Sie daher unbedingt auf den Pfad der enthaltenen Datei. Beispielsweise enthält Datei A Datei B, Datei B enthält Datei C und die Dateien A, B und C befinden sich nicht im selben Ordner. Zu diesem Zeitpunkt können häufig Fehler gemacht werden.

Lösung: Sie können die Anweisung dirname(__FILE__) verwenden, um den absoluten Pfad des aktuellen Skripts abzurufen. Zum Beispiel: require_once(dirname(__FILE__).'/config.php');

2. Effizienzprobleme

include_once(), require_once() Im Vergleich zu include() und require() ist es weniger effizient, da sie zumindest zunächst feststellen müssen, ob die Datei enthalten ist. Dieses Problem wurde in der PHP5-Version erheblich verbessert, es gibt jedoch immer noch einen Unterschied in der Effizienz.

Vielen Dank an alle fürs Lesen. Ich hoffe, dass Sie nach dem Lesen einige Fortschritte machen.

Empfohlenes Tutorial: „PHP-Tutorial

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen Include-Dateien und Require in PHP (mit ausführlicher Erklärung). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage