如何使用php判断所处服务器操作系统的类型


Posted in PHP onJune 20, 2013

我本机开发用的是winXP,但是上传的服务器是linux,每次上传前总是要改一下配置文件,还有其他一些什么的,
现在通过判断当前服务器的类型来决定执行什么样的程序,那么php如何判断所处服务器是什么类型呢
php有许多系统预定义变量,通过判断他们可以简单的判断系统是 windows还是*unix
其中相关的函数或者预定义变量如下

php_uname();
PHP_OS
DIRECTORY_SEPARATOR
PHP_SHLIB_SUFFIX
PATH_SEPARATOR

具体程序:
<?
if(PATH_SEPARATOR==':') echo 'Linux';
else echo 'Windows';
?>

或者
<?php
echo php_uname();
echo PHP_OS;
/* Some possible outputs:
Linux localhost 2.4.21-0.13mdk #1 Fri Mar 14 15:08:06 EST 2003 i686
Linux
FreeBSD localhost 3.2-RELEASE #15: Mon Dec 17 08:46:02 GMT 2001
FreeBSD
Windows NT XN1 5.1 build 2600
WINNT
*/
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
    echo 'This is a server using Windows!';
} else {
    echo 'This is a server not using Windows!';
}
?>
PHP 相关文章推荐
PHP 获取目录下的图片并随机显示的代码
Dec 28 PHP
PHP中10个不常见却非常有用的函数
Mar 21 PHP
php数组函数序列之array_intersect() 返回两个或多个数组的交集数组
Nov 10 PHP
使用cookie实现统计访问者登陆次数
Jun 08 PHP
php连接函数implode与分割explode的深入解析
Jun 26 PHP
基于preg_match_all采集后数据处理的一点心得笔记(编码转换和正则匹配)
Jan 31 PHP
php+mysql实现用户注册登陆的方法
Jan 03 PHP
php数组生成html下拉列表的方法
Jul 20 PHP
关于PHP文件的自动运行方法分析
May 13 PHP
php批量删除操作(数据访问)
May 23 PHP
laravel 修改.htaccess文件 重定向public的解决方法
Oct 12 PHP
Yii框架 session 数据库存储操作方法示例
Nov 18 PHP
解析如何在PHP下载文件名中解决乱码的问题
Jun 20 #PHP
解析smarty 截取字符串函数 truncate的用法介绍
Jun 20 #PHP
完美解决令人抓狂的zend studio 7代码提示(content Assist)速度慢的问题
Jun 20 #PHP
IIS+fastcgi下PHP运行超时问题的解决办法详解
Jun 20 #PHP
解析php利用正则表达式解决采集内容排版的问题
Jun 20 #PHP
解析使用substr截取UTF-8中文字符串出现乱码的问题
Jun 20 #PHP
用Json实现PHP与JavaScript间数据交换的方法详解
Jun 20 #PHP
You might like
php empty()与isset()区别的详细介绍
2013/06/17 PHP
javascript css在IE和Firefox中区别分析
2009/02/18 Javascript
JavaScript快速检测浏览器对CSS3特性的支持情况
2012/09/26 Javascript
自己封装的javascript事件队列函数版
2014/06/12 Javascript
URL的参数中有加号传值变为空格的问题(URL特殊字符)
2016/11/04 Javascript
javascript history对象详解
2017/02/09 Javascript
Javascript中的getter和setter初识
2017/08/17 Javascript
javascript将list转换成树状结构的实例
2017/09/08 Javascript
jquery实现图片跟随鼠标的实例
2017/10/17 jQuery
如何利用vue+vue-router+elementUI实现简易通讯录
2019/05/13 Javascript
vue实现前台列表数据过滤搜索、分页效果
2019/05/28 Javascript
webpack自动打包和热更新的实现方法
2019/06/24 Javascript
vue 出现data-v-xxx的原因及解决
2020/08/04 Javascript
react的hooks的用法详解
2020/10/12 Javascript
记录一次websocket封装的过程
2020/11/23 Javascript
[35:29]Secret vs VG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
python发送arp欺骗攻击代码分析
2014/01/16 Python
简化Python的Django框架代码的一些示例
2015/04/20 Python
Django中处理出错页面的方法
2015/07/15 Python
浅谈机器学习需要的了解的十大算法
2017/12/15 Python
浅谈Python中的私有变量
2018/02/28 Python
Pandas之排序函数sort_values()的实现
2019/07/09 Python
使用Keras实现Tensor的相乘和相加代码
2020/06/18 Python
python 5个实用的技巧
2020/09/27 Python
Python批量修改xml的坐标值全部转为整数的实例代码
2020/11/26 Python
python 实现简易的记事本
2020/11/30 Python
CSS3打造百度贴吧的3D翻牌效果示例
2017/01/04 HTML / CSS
Lenox官网:精美的瓷器&独特的礼品
2017/02/12 全球购物
赫里福德的一家乡村零售商店:Philip Morris & Son
2017/06/25 全球购物
VICHY薇姿英国官网:全球专业敏感肌护肤领先品牌
2017/07/04 全球购物
英国最好的包装供应商:Priory Direct
2019/12/17 全球购物
医学专业个人求职自荐信格式
2013/09/23 职场文书
党员自我批评与反省材料
2014/02/10 职场文书
上帝也疯狂观后感
2015/06/09 职场文书
毕业实习证明范本
2015/06/16 职场文书
Oracle创建只读账号的详细步骤
2021/06/07 Oracle