首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >PHP脚本-检测是否在linux或Windows下运行?

PHP脚本-检测是否在linux或Windows下运行?
EN

Stack Overflow用户
提问于 2011-05-04 13:36:25
回答 9查看 82K关注 0票数 157

我有一个PHP脚本,可以放在windows系统或linux系统上。在这两种情况下,我都需要运行不同的命令。

如何检测我所处的环境?(最好是一些PHP,而不是聪明的系统黑客)

更新

为了清楚起见,该脚本是从命令行运行的。

EN

回答 9

Stack Overflow用户

发布于 2011-05-04 13:39:22

您可以检查目录分隔符是/ (对于unix/linux/mac)还是windows上的\。常量名称为DIRECTORY_SEPARATOR

代码语言:javascript
复制
if (DIRECTORY_SEPARATOR === '/') {
    // unix, linux, mac
}

if (DIRECTORY_SEPARATOR === '\\') {
    // windows
}
票数 70
EN

Stack Overflow用户

发布于 2012-07-23 08:25:11

代码语言:javascript
复制
if (strncasecmp(PHP_OS, 'WIN', 3) == 0) {
    echo 'This is a server using Windows!';
} else {
    echo 'This is a server not using Windows!';
}

看起来比公认的答案更优雅一些。不过,使用DIRECTORY_SEPARATOR进行上述检测是最快的。

票数 39
EN

Stack Overflow用户

发布于 2019-09-09 00:12:50

从PHP7.2.0开始,您可以使用常量PHP_OS_FAMILY检测正在运行的操作系统

代码语言:javascript
复制
if (PHP_OS_FAMILY === "Windows") {
  echo "Running on Windows";
} elseif (PHP_OS_FAMILY === "Linux") {
  echo "Running on Linux";
}

有关其可能的值,请参阅official PHP documentation

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5879043

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档