Valores posibles para: PHP_OS
-
09-09-2019 - |
Pregunta
¿Hay un lugar para encontrar una lista de los posibles valores para el PHP predefinidas PHP_OS
constante? Me gustaría utilizar este valor para un sistema de comprobación de los requisitos, pero necesita saber cómo los diferentes sistemas operativos se nombran en esta variable.
A través de un poco de búsqueda, hasta ahora he compilado la lista siguiente:
- CYGWIN_NT-5.1
- Darwin
- FreeBSD
- HP-UX
- IRIX64
- Linux
- NetBSD
- OpenBSD
- SunOS
- Unix
- WIN32
- WINNT
- Windows
Si alguien tiene una lista más completa, o sabe de los valores adicionales que me encantaría escucharlos!
Solución
PHP pasa a través del uname, excepto en Windows (WINNT
) y Netware (Netware
) . Ver Wikipedia para una lista no exhaustiva de los valores no mencionados en su pregunta:
- CYGWIN_NT-5.1
- IRIX64
- SunOS
- HP-UX
- OpenBSD (no en Wikipedia)
Otros consejos
Creo que una mejor solución para hacer un 'cheque requisito' sería la de utilizar realmente las cosas que usted necesita saber el trabajo correctamente y ver qué pasa.
Por ejemplo, hay constantes para separadores de directorios, funciones como la ruta real (), etc para hacer frente a los directorios en diferentes sistemas operativos.
¿Cuál es, específicamente, estás tratando de hacer?
parece que el php_uname("s")
para los no Unix sistemas operativos sería un buen comienzo, ya que me parece uname("s")
y php_uname("s")
son los mismos en los sistemas Unix y sistemas POSIX sub, como Cygwin, Mingw, UWin, EMX + GCC y MKS. A continuación se muestra una lista de sistemas operativos que no son compatibles con POSIX fuera de la caja y que PHP plazo.
SO
- OS / 2 Warp
- eComStation
- RISC OS
- Windows XP de 64 bits
Tenga en cuenta que esto no es en absoluto para la detección del explorador, pero ruta raíz de la detección, separadores de directorios que pueden o no pueden ser \
y /
, EOL, y algunas otras cosas.
Los ejemplos de caminos de raíz
- Unix \ linux \ Mac OS X:
/
- OS / 2:
C:\
- Amiga:
dh0: