Bestimmen des Skriptausführungsmodus in PHP
Die Bestimmung, ob ein PHP-Skript über die Befehlszeile oder HTTP ausgeführt wird, ist für verschiedene Zwecke von entscheidender Bedeutung. wie etwa die Ausgabeformatierung. Historisch gesehen galt die Überprüfung der Variablen SERVER['argc'] als kanonischer Ansatz. Allerdings erweist sich diese Methode bei Verwendung der Apache 2.0 Handler-Server-API als unzuverlässig, da sie SERVER['argc'] auch bei der Befehlszeilenausführung auffüllt.
Die empfohlene und robustere Methode ist die Verwendung der Funktion php_sapi_name() . Es gibt einen String zurück, der den Typ der Schnittstelle zwischen dem Webserver und PHP angibt. Beispiele hierfür sind:
Beispielcode :
if (php_sapi_name() == "cli") { // In cli-mode } else { // Not in cli-mode }
Hinweise zur Dokumentation:
Die Dokumentation der Funktion php_sapi_name() bietet weitere Informationen:
Das obige ist der detaillierte Inhalt vonWie kann festgestellt werden, ob ein PHP-Skript in der Befehlszeile oder über HTTP ausgeführt wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!