php获取手机端的号码以及ip地址实例代码


Posted in PHP onSeptember 12, 2018

我们在用PHP写移动端程序的时候,有的时候需要直接获取手机号码以及对应的IP地址内容,在此我们给大家整理了详细完整的代码内容,需要的朋友们测试下。

<?php
/**
 * Created by PhpStorm.
 * User: liubao
 * Date: 2018/8/30
 * Time: 16:21
 */
 
/**
 *  类名:  mobile
 *  描述:  手机信息类
 *  其他:  偶然  编写
 */
class  mobile
{
  /**
   *  函数名称:  getPhoneNumber
   *  函数功能:  取手机号
   *  输入参数:  none
   *  函数返回值:  成功返回号码,失败返回false
   *  其它说明:  说明
   */
  function getPhoneNumber()
  {
    if (isset($_SERVER['HTTP_X_NETWORK_INFO '])) {
      $str1 = $_SERVER['HTTP_X_NETWORK_INFO '];
      $getstr1 = preg_replace('/(.*,)(11[d])(,.*)/i ', '2 ', $str1);
      Return $getstr1;
    } elseif (isset($_SERVER['HTTP_X_UP_CALLING_LINE_ID '])) {
      $getstr2 = $_SERVER['HTTP_X_UP_CALLING_LINE_ID '];
      Return $getstr2;
    } elseif (isset($_SERVER['HTTP_X_UP_SUBNO '])) {
      $str3 = $_SERVER['HTTP_X_UP_SUBNO '];
      $getstr3 = preg_replace('/(.*)(11[d])(.*)/i ', '2 ', $str3);
      Return $getstr3;
    } elseif (isset($_SERVER['DEVICEID '])) {
      Return $_SERVER['DEVICEID '];
    } else {
      Return false;
    }
  }
 
  /**
   *  函数名称:  getHttpHeader
   *  函数功能:  取头信息
   *  输入参数:  none
   *  函数返回值:  成功返回号码,失败返回false
   *  其它说明:  说明
   */
  function getHttpHeader()
  {
    $str = ' ';
    foreach ($_SERVER as $key => $val) {
      $gstr = str_replace("& ", "& ", $val);
      $str .= "$key  ->  " . $gstr . "rn ";
    }
    Return $str;
  }
 
  /**
   *  函数名称:  getUA
   *  函数功能:  取UA
   *  输入参数:  none
   *  函数返回值:  成功返回号码,失败返回false
   *  其它说明:  说明
   */
  function getUA()
  {
    if (isset($_SERVER['HTTP_USER_AGENT '])) {
      Return $_SERVER['HTTP_USER_AGENT '];
    } else {
      Return false;
    }
  }
 
  /**
   *  函数名称:  getPhoneType
   *  函数功能:  取得手机类型
   *  输入参数:  none
   *  函数返回值:  成功返回string,失败返回false
   *  其它说明:  说明
   */
  function getPhoneType()
  {
    $ua = $this->getUA();
    if ($ua != false) {
      $str = explode('  ', $ua);
      Return $str[0];
    } else {
      Return false;
    }
  }
 
  /**
   *  函数名称:  isOpera
   *  函数功能:  判断是否是opera
   *  输入参数:  none
   *  函数返回值:  成功返回string,失败返回false
   *  其它说明:  说明
   */
  function isOpera()
  {
    $uainfo = $this->getUA();
    if (preg_match('/.*Opera.*/i ', $uainfo)) {
      Return true;
    } else {
      Return false;
    }
  }
 
  /**
   *  函数名称:  isM3gate
   *  函数功能:  判断是否是m3gate
   *  输入参数:  none
   *  函数返回值:  成功返回string,失败返回false
   *  其它说明:  说明
   */
  function isM3gate()
  {
    $uainfo = $this->getUA();
    if (preg_match('/M3Gate/i ', $uainfo)) {
      Return true;
    } else {
      Return false;
    }
  }
 
  /**
   *  函数名称:  getHttpAccept
   *  函数功能:  取得HA
   *  输入参数:  none
   *  函数返回值:  成功返回string,失败返回false
   *  其它说明:  说明
   */
  function getHttpAccept()
  {
    if (isset($_SERVER['HTTP_ACCEPT '])) {
      Return $_SERVER['HTTP_ACCEPT '];
    } else {
      Return false;
    }
  }
 
  /**
   *  函数名称:  getIP
   *  函数功能:  取得手机IP
   *  输入参数:  none
   *  函数返回值:  成功返回string
   *  其它说明:  说明
   */
  function getIP()
  {
    $ip = getenv('REMOTE_ADDR ');
    $ip_ = getenv('HTTP_X_FORWARDED_FOR ');
    if (($ip_ != " ") && ($ip_ != "unknown ")) {
      $ip = $ip_;
    }
    return $ip;
  }
}
 
?>

以上就是本篇关于PHP程序获取手机号码和实时IP的全部内容,感谢大家对三水点靠木的支持。

PHP 相关文章推荐
Http 1.1 Etag 与 Last-Modified提高php效率
Jan 10 PHP
php setcookie函数的参数说明及其用法
Apr 20 PHP
php数组操作之键名比较与差集、交集赋值的方法
Nov 10 PHP
php判断用户是否手机访问代码
Jun 08 PHP
PHP实现加强版加密解密类实例
Jul 29 PHP
作为程序员必知的16个最佳PHP库
Dec 09 PHP
php类中的$this,static,final,const,self这几个关键字使用方法
Dec 14 PHP
PHP中的密码加密的解决方案总结
Oct 26 PHP
php实现简单的守护进程创建、开启与关闭操作
Aug 13 PHP
Laravel5.4简单实现app接口Api Token认证方法
Aug 29 PHP
PHP设计模式(一)工厂模式Factory实例详解【创建型】
May 02 PHP
PHP函数用法详解【初始化、嵌套、内置函数等】
Jun 02 PHP
详解php用static方法的原因
Sep 12 #PHP
php实现数字补零的方法总结
Sep 12 #PHP
php使用QueryList轻松采集js动态渲染页面方法
Sep 11 #PHP
Yii2结合Workerman的websocket示例详解
Sep 10 #PHP
PHP按符号截取字符串的指定部分的实现方法
Sep 10 #PHP
php 中htmlentities导致中文无法查询问题
Sep 10 #PHP
使用PHPExcel导出Excel表
Sep 08 #PHP
You might like
PHP中使用addslashes函数转义的安全性原理分析
2014/11/03 PHP
Yii2框架视图(View)操作及Layout的使用方法分析
2019/05/27 PHP
基于Jquery的将DropDownlist的选中值赋给label的实现代码
2011/05/06 Javascript
解析Javascript中大括号“{}”的多义性
2013/12/02 Javascript
javascript使用输出语句实现网页特效代码
2015/08/06 Javascript
js点击按钮实现水波纹效果代码(CSS3和Canves)
2016/09/15 Javascript
使用DeviceOne实现微信小程序功能
2016/12/29 Javascript
JS中的phototype详解
2017/02/04 Javascript
原生js实现放大镜特效
2017/03/08 Javascript
jquery单击文字或图片内容放大并居中显示
2017/06/23 jQuery
Vue路由切换时的左滑和右滑效果示例
2018/05/29 Javascript
bootstrap模态框弹出和隐藏,动态改变中间内容的实例
2018/08/10 Javascript
实例详解Vue项目使用eslint + prettier规范代码风格
2018/08/20 Javascript
vue监听input标签的value值方法
2018/08/27 Javascript
详解vue 不同环境配置不同的打包命令
2019/04/07 Javascript
jQuery使用jsonp实现百度搜索的示例代码
2020/07/08 jQuery
vue如何在项目中调用腾讯云的滑动验证码
2020/07/15 Javascript
vue 防止页面加载时看到花括号的解决操作
2020/11/09 Javascript
js正则表达式简单校验方法
2021/01/03 Javascript
[35:43]2018DOTA2亚洲邀请赛 4.1 小组赛B组 paiN vs Effect
2018/04/03 DOTA
Python中为什么要用self探讨
2015/04/14 Python
Python新手们容易犯的几个错误总结
2017/04/01 Python
对python模块中多个类的用法详解
2019/01/10 Python
浅谈Python基础—判断和循环
2019/03/22 Python
Scrapy-Redis结合POST请求获取数据的方法示例
2019/05/07 Python
Django logging配置及使用详解
2019/07/23 Python
python读取excel进行遍历/xlrd模块操作
2020/07/12 Python
Python 使用生成器代替线程的方法
2020/08/04 Python
澳大利亚顶级美发和美容贸易超市:glamaCo
2020/01/19 全球购物
函授毕业生的自我鉴定
2013/11/26 职场文书
大学生求职自我评价
2014/01/16 职场文书
公司晚会主持词
2014/03/22 职场文书
财务负责人岗位职责
2015/02/03 职场文书
2015年银行个人工作总结
2015/05/14 职场文书
2016年优秀班主任先进事迹材料
2016/02/26 职场文书
vue数据字典取键值项目的字典问题
2022/04/12 Vue.js