Вопрос

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

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

  • CYGWIN_NT-5.1
  • Дарвин
  • FreeBSD
  • HP-UX
  • ИРИКС64
  • Линукс
  • NetBSD
  • OpenBSD
  • СанОС
  • Юникс
  • WIN32
  • ВИННТ
  • Окна

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

Это было полезно?

Решение

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

  • CYGWIN_NT-5.1
  • ИРИКС64
  • СанОС
  • HP-UX
  • OpenBSD (нет в Википедии)

Другие советы

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

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

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

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

Операционные системы

  • ОС/2 Варп
  • электростанция
  • РИСК ОС
  • Windows XP 64-битная

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

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

  • Unix\Linux\Mac OS X: /
  • ОС/2: C:\
  • Амига: dh0:
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top