Возможные значения для: PHP OS


есть ли место, чтобы найти список возможных значений для предопределенной константы PHP PHP_OS ? Я хотел бы использовать это значение для проверки системных требований, но нужно знать, как разные операционные системы называются в этой переменной.

через некоторый поиск, до сих пор я скомпилировал следующее список:

  • CYGWIN_NT-5.1
  • Дарвин
  • FreeBSD
  • HP-UX
  • IRIX64
  • Linux
  • NetBSD
  • OpenBSD
  • SunOS
  • Unix
  • для Win32
  • WINNT
  • Windows

Если у кого есть более полный список, или знает о каких-либо дополнительных значений, я хотел бы услышать их!

3 56

3 ответа:

PHP проходит через uname,кроме Windows (WINNT) и Netware (Netware). Смотрите Википедия для неисчерпывающего списка значений, не упомянутых в вашем вопросе:

  • CYGWIN_NT-5.1
  • IRIX64
  • в SunOS
  • HP-UX
  • OpenBSD (не в Википедии)

Я думаю, что лучшим решением для выполнения "проверки требований" было бы фактически использовать вещи, которые вам нужно знать, работать правильно и видеть, что происходит.

например, существуют константы для разделителей каталогов, такие функции, как realpath () и т. д. Для работы с каталогами в разных операционных системах.

Что конкретно вы пытаетесь сделать?

кажется php_uname("s") для не-Unix ОС было бы хорошим началом, так как это выглядит для меня как uname("s") и php_uname("s") то же самое в системах Unix и подсистемах posix, таких как Cygwin, Mingw, UWin, EMX+GCC и MKS. Ниже приведен список ОС, которые не являются Posix-совместимыми из коробки и которые запускают PHP.

OS

  • OS / 2 Warp
  • eComStation
  • RISC OS
  • Windows XP 64-бит

сохранить имейте в виду, что это вовсе не для обнаружения браузера, а для обнаружения корневого пути, разделителей каталогов, которые могут быть или не быть \ и /, EOL, и еще несколько вещей.

примеры корневых путей

  • Unix\linux\Mac OS X:/
  • OS / 2:C:\
  • Амига: dh0: