php判断操作系统,php 查询系统

发布时间:2022-11-23

本文目录一览:

  1. 关于32位和64位的PHP问题?
  2. PHP网站如何统计游客是用什么机型访问网站的,是什么操作系统,是Win还是iphone还是安卓?
  3. php如何判断当前的操作系统是linux还是windows
  4. PHP如何选择服务器操作系统
  5. php_uname()函数详解
  6. php 判断手机操作系统

关于32位和64位的PHP问题?

php开发的程序不区分系统32位还是64位,如果你是说Php环境安装包的话,最好与系统配套吧。

PHP网站如何统计游客是用什么机型访问网站的,是什么操作系统,是Win还是iphone还是安卓?

该功能的实现思路是通过HTTP_X_WAP_PROFILEHTTP_VIAHTTP_USER_AGENT等信息来判断访客是否通过移动端浏览器访问PHP网站。以下是PHP代码:

/**
 * 是否移动端访问访问
 *
 * @return bool
 */
function isMobile()
{
    // 如果有HTTP_X_WAP_PROFILE则一定是移动设备
    if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) {
        return true;
    }
    // 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
    if (isset($_SERVER['HTTP_VIA'])) {
        // 找不到为flase,否则为true
        return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false;
    }
    // 脑残法,判断手机发送的客户端标志,兼容性有待提高
    if (isset($_SERVER['HTTP_USER_AGENT'])) {
        $clientkeywords = array(
            'nokia',
            'sony',
            'ericsson',
            'mot',
            'samsung',
            'htc',
            'sgh',
            'lg',
            'sharp',
            'sie-',
            'philips',
            'panasonic',
            'alcatel',
            'lenovo',
            'iphone',
            'ipod',
            'blackberry',
            'meizu',
            'android',
            'netfront',
            'symbian',
            'ucweb',
            'windowsce',
            'palm',
            'operamini',
            'operamobi',
            'openwave',
            'nexusone',
            'cldc',
            'midp',
            'wap',
            'mobile'
        );
        // 从HTTP_USER_AGENT中查找手机浏览器的关键字
        if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) {
            return true;
        }
    }
    // 协议法,因为有可能不准确,放到最后判断
    if (isset($_SERVER['HTTP_ACCEPT'])) {
        // 如果只支持wml并且不支持html那一定是移动设备
        // 如果支持wml和html但是wml在html之前则是移动设备
        if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) {
            return true;
        }
    }
    return false;
}

php如何判断当前的操作系统是linux还是windows

PHP判断当前操作系统的方法很多,比如:

  1. 直接使用PHP预定义常量PHP_OS来获取;
<?php
header("Content-type:text/html;charset=utf-8;");
$os_name = PHP_OS;
if (strpos($os_name, "Linux") !== false) {
    $os_str = "Linux操作系统";
} else if (strpos($os_name, "WIN") !== false) {
    $os_str = "Windows操作系统";
}
echo $os_str;
  1. 还可以通过用户浏览器信息来判断操作系统。
<?php
header("Content-type:text/html;charset=utf-8;");
// 测试
echo get_user_os();
// Windows操作系统
function get_user_os()
{
    // 获取用户浏览信息参数
    $agent = $_SERVER['HTTP_USER_AGENT'];
    // 获取操作系统类型
    if (strpos($agent, "NT 6.1")) {
        $os_name = "Windows 7";
    } elseif (strpos($agent, "NT 5.1")) {
        $os_name = "Windows XP (SP2)";
    } elseif (strpos($agent, "NT 5.2") && strpos($agent, "WOW64")) {
        $os_name = "Windows XP 64-bit Edition";
    } elseif (strpos($agent, "NT 5.2")) {
        $os_name = "Windows 2003";
    } elseif (strpos($agent, "NT 6.0")) {
        $os_name = "Windows Vista";
    } elseif (strpos($agent, "NT 5.0")) {
        $os_name = "Windows 2000";
    } elseif (strpos($agent, "4.9")) {
        $os_name = "Windows ME";
    } elseif (strpos($agent, "NT 4")) {
        $os_name = "Windows NT 4.0";
    } elseif (strpos($agent, "98")) {
        $os_name = "Windows 98";
    } elseif (strpos($agent, "95")) {
        $os_name = "Windows 95";
    } elseif (strpos($agent, "Linux")) {
        $os_name = "Linux";
    }
    if (strpos($os_name, "Linux") !== false) {
        $os_str = "Linux操作系统";
    } else if (strpos($os_name, "Windows") !== false) {
        $os_str = "Windows操作系统";
    } else {
        $os_str = "未知操作系统";
    }
    return $os_str;
}
  1. 使用php_uname函数来获取;
<?php
header("Content-type:text/html;charset=utf-8;");
$os_name = php_uname();
if (strpos($os_name, "Linux") !== false) {
    $os_str = "Linux操作系统";
} else if (strpos($os_name, "Windows") !== false) {
    $os_str = "Windows操作系统";
}
echo $os_str;

PHP如何选择服务器操作系统

如果是虚拟主机,php一般要选择的Unix/Linux系统,如果是自己的主机,那用windows也是可以的。

php_uname()函数详解

php_uname — 返回运行 PHP 的系统的有关信息。 语法: php_uname([$mode]) php_uname() 函数会返回运行 php 的操作系统的相关描述,和 phpinfo() 最顶端上输出的是同一个字符串。 如果仅仅要获取操作系统的名称。可以考虑使用常量 PHP_OS,不过要注意该常量会包含 PHP 构建(built)时的操作系统名。

php 判断手机操作系统

根据useragent来完成,示例:

function isMobileSystem()
{
    $agent = $_SERVER['HTTP_USER_AGENT'];
    if (preg_match('/ipad/i', $agent) ||
        preg_match('/iphone\s*os/i', $agent) ||
        preg_match('/android|wp7|wp8|surface|nokia|sumsang/i', $agent) ||
        preg_match('/wbxml|wml/i', $_SERVER['HTTP_ACCEPT'])) {
        return true;
    }
    return false;
}