Manchmal ist es sinnvoll, wenn Sie selbst definierte Funktionen in eine separate PHP-Datei auslagern, um sie in mehreren Skripten nutzen zu können.
Mithilfe der include- bzw. require-Anweisung können Sie Dateien, z.B. Funktionen, die Sie benötigen, in Ihr PHP-Programm einbinden.
Die include()- bzw. die require()-Anweisung binden eine bestimmte Datei, deren Pfad als Argument übergeben wird, in den aktuellen Programmcode ein.
Unterschiede zwischen include und require
Der Unterschied zwischen den beiden Anweisungen zeigt sich, wenn eine Datei fehlerhaft eingebunden wurde:
include() eine Warnung. Das Skript wird weiter ausgeführt.require() beendet bei einer fehlenden Datei das Skript sofort mit einer Fehlermeldung.Syntax und Bedeutung der include()- und require()-Anweisungen
php.ini im Bereich fopen wrappers die Option allow_url_fopen = on gesetzt, so können Sie auch einen URL als Parameter angeben.
So kann z. B. der Rückgabewert in einer Variablen gespeichert werden
mit: $variable = include(Datei) .
Innerhalb der eingebundenen Dateien muss der PHP-Code von gültigen PHP-Tags <?php … ?> umschlossen sein. Befindet sich kein PHP-Code in den Dateien, können die Tags weggelassen werden.
Um Skripte, die später in einen PHP-Code eingebunden werden sollen, zu kennzeichnen, ist es empfehlenswert, die Dateierweiterung .inc.php zu vergeben. Die Bezeichnung .inc.php steht hierbei für die Abkürzung von include.
Beispiel: include.php
Zur Veranschaulichung der Arbeitsweise der include()-Anweisung erstellen Sie ein Loginverfahren. Die Prüfung, ob der eingegebene Nickname und das Kennwort korrekt sind, wird in die Datei prueflogin.inc codiert. Vom Loginformular formular_login.html wird die Datei include.php aufgerufen.
Datei: include.php
<html> <body> <h4> Loginergebnis über include </h4> <?php echo "Start<br>Nun wird ein PHP-Skript eingebunden:<hr>"; echo "Die Rückgabe der Datei ergibt:<br>"; include ("prueflogin.inc"); echo "<hr>Hier können weitere Anweisungen der Datei include.php ausgeführt werden."; ?> </body> </html>
Die include()-Anweisung bindet die Datei prueflogin.inc ein.
Datei: prueflogin.inc
Innerhalb der Datei prueflogin.inc wird die Kennwortprüfung vorgenommen.
<?php if ($_POST["nickname"] == "Mario" && $_POST["kennwort"] == "geheim") echo "Zutritt erfolgt"; else echo "Zutritt erfolgt nicht"; ?>