Das Erste, was gesagt werden muss, ist, dass die Kernfunktionen von include, include_once, require und require_once alle gleich sind, was dem direkten Kopieren des Codes der Zielwebseite entspricht.
Wenn die Leistung nicht berücksichtigt wird, können grundlegende Effekte durch die Verwendung von include, include_once, require und require_once erzielt werden. Grundsätzlich können Sie es verwenden, wie Sie möchten.
Die geringfügigen Unterschiede sind wie folgt:
Zum Beispiel gibt es eine einfache print-Anweisung in 1.php:
<?php echo "1" ?>
<?php include '1.php'; require '1.php'; include_once '1.php'; require_once '1.php'; ?>
Wenn es wie folgt geschrieben wird:
<?php include_once '1.php'; require_once '1.php'; include '1.php'; require '1.php'; ?>
Es ist erwähnenswert, dass _once zwar bedeutet, dass das, was zuvor eingeführt wurde, nicht mehr eingeführt wird, diese Anweisung jedoch nicht prüft, ob der Code auf der importierten Webseite identisch ist. Es gibt beispielsweise zwei Web Seiten mit genau dem gleichen Code untitled.html und untitled1.html sind:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" c/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> </body> </html>
<?php include_once 'untitled.html'; include_once 'untitled1.html'; ?>
Sehen Sie, dass derselbe Teil zweimal erscheint. _once verwendet lediglich den Dateinamen, um festzustellen, ob er bereits zuvor eingeführt wurde oder nicht.
Daher kann _once nicht verhindern, dass dieselbe Ressource mit unterschiedlichen Namen mehrmals eingeführt wird.
Zusätzlich zu den unterschiedlichen Möglichkeiten, importierte Dateien zu verarbeiten, besteht der größte Unterschied zwischen include und require darin, dass include beim Einfügen einer nicht vorhandenen Datei eine Warnung generiert und das Skript weiterhin ausgeführt wird, während require eine Warnung verursacht Schwerwiegender Fehler und die Ausführung des Skripts wird gestoppt.
Wenn beispielsweise a.php nicht existiert, gibt der folgende Code immer noch b aus:
<?php include 'a.php'; echo 'b'; ?>
<?php require 'a.php'; echo 'b'; ?>
Es gibt außerdem folgende Unterschiede:
include() ist eine bedingte Einschlussfunktion, während require() eine bedingungslose Einschlussfunktion ist
if(FALSE){ include 'file.php'; //file.php不会被引入 } if(FALSE){ require 'file.php'; //file.php将会被引入 }
$retVal = include(’somefile.php’); if(!empty($retVal)){ echo “文件包含成功”; }else{ echo “文件包含失败”; }
Die Dateien, auf die bei der Ausführung von include() verwiesen werden muss, müssen jedes Mal gelesen und ausgewertet werden. Die Dateien, auf die bei der Ausführung von require() verwiesen werden muss, werden tatsächlich nur einmal verarbeitet Wenn eine der Dateien, auf die während der Ausführung verwiesen werden muss, die require()-Anweisung ersetzt, ist ersichtlich, dass die Verwendung von require() effizienter ist, wenn Code vorhanden ist, der eine dieser Anweisungen enthält, und Code, der möglicherweise mehrmals ausgeführt wird. . Wenn bei jeder Codeausführung eine andere Datei gelesen wird oder eine Reihe von Dateiiterationsschleifen vorhanden sind, verwenden Sie include().
require wird normalerweise am Anfang des PHP-Programms platziert. Bevor das PHP-Programm ausgeführt wird, liest es zunächst die durch require angegebene Datei ein und macht sie zu einem Teil des PHP-Programms Webseite teilen. Auch häufig verwendete Funktionen können auf diese Weise in Webseiten eingebunden werden. Normalerweise wird die Include-Methode verwendet, und diese Funktion wird normalerweise im Verarbeitungsteil der Prozesssteuerung platziert. Die PHP-Programm-Webseite liest die Include-Datei nur, wenn sie sie liest. Auf diese Weise kann der Prozess der Programmausführung vereinfacht werden.
Außerdem gilt hinsichtlich der Frage, ob nach include und require Klammern hinzugefügt werden sollen, theoretisch: Es gibt keinen Unterschied in den Ausführungsergebnissen zwischen include und require, aber das Hinzufügen von Klammern ist weniger effizient, sodass die Klammern weggelassen werden können Fügen Sie danach keine Klammern hinzu.
Urheberrechtserklärung: Dieser Artikel ist ein Originalartikel des Bloggers und darf nicht ohne die Erlaubnis des Bloggers reproduziert werden.
Das Obige hat die Unterschiede zwischen include, include_once, require und require_once vorgestellt, einschließlich der relevanten Aspekte. Ich hoffe, es wird für Freunde hilfreich sein, die sich für PHP-Tutorials interessieren.