Possible Values For: PHP_OS

↘锁芯ラ 提交于 2019-11-27 17:35:15

PHP passes through the uname, except on Windows (WINNT) and Netware (Netware). See Wikipedia for a non-exhaustive list of values not mentioned in your question:

  • CYGWIN_NT-5.1
  • IRIX64
  • SunOS
  • HP-UX
  • OpenBSD (not in Wikipedia)

I think a better solution to do a 'requirement check' would be to actually use things that you need to know work properly and see what happens.

For example, there are constants for directory separators, functions like realpath(), etc to deal with directories on different operating systems.

What, specifically, are you trying to do?

marz201

it seems like the php_uname("s") for non-Unix OSes would be a good start, since it looks to me like uname("s") and php_uname("s") are the same on Unix systems and posix sub systems, such as Cygwin, Mingw, UWin, EMX+GCC, and MKS. Below is a list of OSes that are not Posix-compliant out of the box and that run PHP.

OS

  • OS/2 Warp
  • eComStation
  • RISC OS
  • Windows XP 64-bit

Keep in mind, this is not at all for Browser detection, but root path detecting, directory separators that may or may not be \ and /, EOL, and a few other things.

Examples of root paths

  • Unix\linux\Mac OS X: /
  • OS/2: C:\
  • Amiga: dh0:
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!