GNU/Linux >> LINUX-Kenntnisse >  >> Linux

PHP-Skript - erkennen, ob es unter Linux oder Windows läuft?

if (strncasecmp(PHP_OS, 'WIN', 3) == 0) {
    echo 'This is a server using Windows!';
} else {
    echo 'This is a server not using Windows!';
}

scheint etwas eleganter zu sein als die akzeptierte Antwort. Die oben erwähnte Erkennung mit DIRECTORY_SEPARATOR ist jedoch am schnellsten.


Sie können überprüfen, ob das Verzeichnistrennzeichen / ist (für Unix/Linux/Mac) oder \ an Fenstern. Der Konstantenname ist DIRECTORY_SEPARATOR .

if (DIRECTORY_SEPARATOR === '/') {
    // unix, linux, mac
}

if (DIRECTORY_SEPARATOR === '\\') {
    // windows
}

Überprüfen Sie den Wert von PHP_OS konstant.

Unter Windows erhalten Sie verschiedene Werte wie WIN32 , WINNT oder Windows .

Siehe auch:Mögliche Werte für:PHP_OS und php_uname :

if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
    echo 'This is a server using Windows!';
} else {
    echo 'This is a server not using Windows!';
}

Ab PHP 7.2.0 können Sie das laufende Betriebssystem erkennen. mit der Konstante PHP_OS_FAMILY :

if (PHP_OS_FAMILY === "Windows") {
  echo "Running on Windows";
} elseif (PHP_OS_FAMILY === "Linux") {
  echo "Running on Linux";
}

Die möglichen Werte finden Sie in der offiziellen PHP-Dokumentation.


Linux
  1. Kompilieren Sie ein PHP-Skript unter Linux

  2. Kann Python erkennen, unter welchem ​​Betriebssystem es läuft?

  3. Ausführen eines Python-Skripts von PHP

  4. Laufendes Linux innerhalb von Windows XP, dh kein duales Booten

  5. Überprüfen, welche PHP-Version ich unter Linux ausführe?

Bringen Sie podman unter Windows mit Linux zum Laufen

Space Cadet Pinball für Windows 95 neu kompiliert für Linux unter Windows 11 als Linux-App unter WSLg

Linux vs. Windows-Sicherheit

Plattformübergreifender Build unter Windows für Linux mit CMake

So fügen Sie Shebang # hinzu! mit PHP-Skript unter Linux?

Linux/Ubuntu-Satz:Illegale Option -o pipefail