Die Anweisung include_once() schließt zur Ausführungszeit die angegebene Datei ein und wertet diese aus. Dies ist ähnlich der include()-Anweisung; mit dem Unterschied, dass einmal eingebundener Code nicht nochmals eingebunden wird. Wie der Name vermuten lässt, wird die Datei nur ein einziges Mal eingebunden.
include_once() sollten Sie in den Fällen benutzen, wenn die gleiche Datei in einem bestimmten Bereich mehrmals eingebunden und interpretiert werden soll und Sie sicher stellen wollen, dass diese Datei nur exakt einmal eingebunden wird, um Probleme mit Wiederholungen von Funktionsdefinitionen und Wertzuweisungen an Variablen zu vermeiden, usw.
Weitere Beispiele zu require_once() und include_once() können Sie dem » PEAR-Code entnehmen, welcher im aktuellsten PHP-Source-Code enthalten ist.
Der Rückgabewert entspricht dem von include(). Wurde die Datei bereits eingebunden wird TRUE zurückgegeben.
Hinweis: include_once() steht ab PHP 4.01pl2 zur Verfügung.
Hinweis: Beachten Sie, dass auf auf einem Betriebssystem, das nicht zwischen Groß- und Kleinschreibung unterschiedet (wie z.B. Windows) das Verhalten von include_once() und require_once() nicht unbedingt ihren Erwartungen entspricht.
Dieses Verhalten hat sich in PHP 5 geändert - der Pfad wird zuerst normalisiert so dass C:\PROGRA~1\A.php und C:\Program Files\a.php als gleich erkannt werden und so die Datei nur einmal eingebunden wird.Beispiel #1 include_once() unterscheidet nicht zwischen Groß-/Kleinschreibung unter Windows
<?php
include_once("a.php"); // bindet a.php ein
include_once("A.php"); // bindet a.php auf Windows nochmal ein! (nur PHP 4)
?>
PHP Versionen kleiner 4.3.0 für Windows, erlauben den Zugriff auf Remote-Dateien mit dieser Funktion nicht, selbst wenn allow_url_fopen aktiviert ist.
Siehe auch include(), require(), require_once(), get_required_files(), get_included_files(), readfile() und virtual().