小黄人 发表于 2020-12-12 17:53:31

PHP 获取访客IP 浏览器 语言

PHP 简单的获取 User Agent 信息代码:

echo $_SERVER['HTTP_USER_AGENT'];

浏览器判断
此代码只能简单的对一些主流浏览器进行识别,其他浏览器我们可以通过加入多个判断的形式进行识别

<?php
function GetBrowser() {
    if (!empty($_SERVER['HTTP_USER_AGENT'])) {
      $br = $_SERVER['HTTP_USER_AGENT'];
      if (preg_match('/MSIE/i', $br)) {
            $br = 'MSIE';
      } elseif (preg_match('/Firefox/i', $br)) {
            $br = 'Firefox';
      } elseif (preg_match('/Chrome/i', $br)) {
            $br = 'Chrome';
      } elseif (preg_match('/Safari/i', $br)) {
            $br = 'Safari';
      } elseif (preg_match('/Opera/i', $br)) {
            $br = 'Opera';
      } else {
            $br = 'Other';
      }
      return $br;
    } else {
      return "0";
    }} ?>

IP获取


<?php
//获取ip
function getip() {
    if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP") , "unknown")) {
      $ip = getenv("HTTP_CLIENT_IP");
    } else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR") , "unknown")) {
      $ip = getenv("HTTP_X_FORWARDED_FOR");
    } else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR") , "unknown")) {
      $ip = getenv("REMOTE_ADDR");
    } else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) {
      $ip = $_SERVER['REMOTE_ADDR'];
    } else {
      $ip = "unknown";
    }
    return $ip;}

语言判断

<?php
function GetLang() {
    if (!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
      $lang = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
      $lang = substr($lang, 0, 5);
      if (preg_match("/zh-cn/i", $lang)) {
            $lang = "简体中文";
      } elseif (preg_match("/zh/i", $lang)) {
            $lang = "繁体中文";
      } else {
            $lang = "English";
      }
      return $lang;
    } else {
      return "0";
    }} ?>
页: [1]
查看完整版本: PHP 获取访客IP 浏览器 语言