English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP Grundlagenanleitung

PHP Fortgeschrittene Anleitung

PHP & MySQL

PHP Referenzhandbuch

php include und require (Dateien einbinden)

In diesem Tutorial lernen Sie, wie man Dateien in PHP einbindet und bewertet.

Ein PHP-Datei in ein anderes PHP-Datei einbinden

Mit den Anweisungen include() und require() kann der Code eines PHP-Dateis in ein anderes PHP-Datei eingebunden werden. Das Einbinden von Dateien ergibt das gleiche Ergebnis wie das Kopieren des Skripts aus der angegebenen Datei und das Einfügen an der Stelle des Aufrufs.

Sie können viel Zeit sparen und durch das Includieren von Dateien arbeiten.-Speichern Sie einfach Codeblöcke in separaten Dateien und verwenden Sie include() und require(), um sie an jedem benötigten Ort zu includieren, ohne den gesamten Codeblock mehrmals einzugeben. Ein typisches Beispiel ist das Includieren von Kopf-, Fuß- und Menüdateien auf allen Seiten der Website.

Die grundlegende Syntax von include() und require() kann wie folgt dargestellt werden:

include("path/to/filename"); 
oder
include "path/to/filename";
require("path/to/filename"); 
oder
require "path/to/filename";

Tipp:Wie bei den print- und echo-Statementen können Sie bei der Verwendung von include() und require() die Klammern weglassen, wie oben beschrieben.

Der folgende Beispiel zeigt Ihnen, wie Sie den allgemeinen Kopf, Fuß und Menücode, der in separaten "header.php", "footer.php" und "menu.php"-Dateien gespeichert ist, auf allen Seiten Ihrer Website includieren. Mit dieser Technik können Sie alle Seiten der Website sofort aktualisieren, indem Sie nur eine Datei ändern, was viel repetitive Arbeit spart.

<!DOCTYPE html>
<html>
<head>
    <title>Basis-Tutorial</title>
</head>
<?php include "header.php"; ?>
<?php include "menu.php"; ?>
    <h1>Willkommen auf unserer Website(www.3codebox.com)!</h1>
    <p>Hier finden Sie viele nützliche Informationen.</p>
<?php include "footer.php"; ?>
</html>

Unterschiede zwischen include() und require()

Sie könnten sich fragen, warum wir require() benötigen, wenn wir das include()-Statement verwenden können, um Dateien zu includieren. Normalerweise verhält sich das require()-Statement ähnlich wie include().

Der einzige Unterschied ist, dass das include()-Statement nur Warnungen in PHP generiert, aber das Skript weiterhin ausgeführt wird, wenn die Datei nicht gefunden wird, während das require()-Statement einen fatalen Fehler auslöst und das Skript beendet.

<?php require "my_variables.php"; ?>
<?php require "my_functions.php"; ?>
<!DOCTYPE html>
<html>
<head>
    <title><?php displayTitle($home_page); ?></title>
</head>
<?php include "header.php"; ?>
<?php include "menu.php"; ?>
    <h1>Willkommen auf unserer Website(www.3codebox.com)!</h1>
    <p>Hier finden Sie viele nützliche Informationen.</p>
<?php include "footer.php"; ?>
</html>

Hinweis: Wenn Bibliotheksdateien oder Dateien, die notwendige Funktionen und Konfigurationsvariablen für die Ausführung der Anwendung enthalten (wieDatenbankkonfigurationsdatei),empfehlen wir die Verwendung des require()-Befehls.

include_once und require_once-Anweisungen

Wenn Sie versehentlich denselben Datei mit include- oder require-Anweisungen mehrmals einbetten (meistensFunktionoderKlasseDatei) könnte Konflikte verursachen. Um dies zu verhindern, bietet PHP die Anweisungen include_once und require_once. Diese Anweisungen verhalten sich wie die include- und require-Anweisungen, mit einem einzigen Unterschied:
Selbst wenn die Datei erneut eingebettet wird, enthalten die Anweisungen include_once und require_once die Datei nur einmal. Das bedeutet, dass die Datei nicht erneut eingebettet wird, wenn die angegebene Datei bereits in einer früheren Anweisung enthalten ist. Um zu verstehen, wie es funktioniert, sehen wir uns ein Beispiel an. Angenommen, wir haben eine Datei "my_functions.php", deren Code wie folgt ist:

<?php
function multiplySelf($var){
    $var *= $var; //Das Selbstmultiplizieren der Variable
    echo $var;
}
?>

Dies ist ein PHP-Skript, das die Datei "my_functions.php" enthält.

<?php
//Datei einbetten
require "my_functions.php";
// Funktion aufrufen
multiplySelf(2); // Ausgabe: 4
echo "<br>";
 
//Fügen Sie die Datei erneut hinzu
require "my_functions.php";
// Funktion aufrufen
multiplySelf(5); // Wird nicht ausgeführt
?>

Wenn Sie den obigen Skript ausführen, sehen Sie eine Fehlermeldung ähnlich der folgenden:„Fataler Fehler: multiplySelf() kann nicht erneut deklariert werden“Der Grund dafür ist, dass "my_functions.php" zweimal eingebettet wurde, was bedeutet, dass die Funktion multiplySelf() zweimal definiert wurde. Dies führt dazu, dass PHP den Skript-Ausführung stoppt und einen fatalen Fehler generiert. Jetzt schreiben Sie den obigen Beispiel mit require_once neu.

<?php
// Datei einbetten
require_once "my_functions.php";
// Funktion aufrufen
multiplySelf(2); // Ausgabe: 4
echo "<br>";
 
//Fügen Sie die Datei erneut hinzu
require_once "my_functions.php";
// Funktion aufrufen
multiplySelf(5); // Ausgabe: 25
?>

Wie Sie sehen können, funktioniert das Skript wie erwartet, indem require_once anstelle von require verwendet wird.