if (strncasecmp(PHP_OS, 'WIN', 3) == 0) {
echo 'This is a server using Windows!';
} else {
echo 'This is a server not using Windows!';
}
parece un poco más elegante que la respuesta aceptada. Sin embargo, la detección antes mencionada con DIRECTORY_SEPARATOR es la más rápida.
Puede verificar si el separador de directorios es / (para unix/linux/mac) o \ en ventanas El nombre de la constante es DIRECTORY_SEPARATOR .
if (DIRECTORY_SEPARATOR === '/') {
// unix, linux, mac
}
if (DIRECTORY_SEPARATOR === '\\') {
// windows
}
Comprueba el valor del PHP_OS constante.
Le dará varios valores en Windows como WIN32 , WINNT o Windows .
Ver también:Valores posibles para:PHP_OS y 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!';
}
A partir de PHP 7.2.0, puede detectar el sistema operativo en ejecución. usando la constante PHP_OS_FAMILY :
if (PHP_OS_FAMILY === "Windows") {
echo "Running on Windows";
} elseif (PHP_OS_FAMILY === "Linux") {
echo "Running on Linux";
}
Consulte la documentación oficial de PHP para conocer sus posibles valores.