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 相关文章推荐
PHP.MVC的模板标签系统(二)
Sep 05 PHP
基于在生产环境中使用php性能测试工具xhprof的详解
Jun 03 PHP
php读取富文本的时p标签会出现红线是怎么回事
May 13 PHP
深入理解PHP中的empty和isset函数
May 26 PHP
CI框架(ajax分页,全选,反选,不选,批量删除)完整代码详解
Nov 01 PHP
php遍历、读取文件夹中图片并分页显示图片的方法
Nov 15 PHP
Yii1.1框架实现PHP极光推送消息通知功能
Sep 06 PHP
php实现微信企业付款到个人零钱功能
Oct 09 PHP
PHP的简单跳转提示的实现详解
Mar 14 PHP
Laravel等框架模型关联的可用性浅析
Dec 15 PHP
4种Windows系统下Laravel框架的开发环境安装及部署方法详解
Apr 06 PHP
tp5.1 框架路由操作-URL生成实例分析
May 26 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
PHP5各个版本的新功能和新特性总结
2014/03/16 PHP
适合PHP初学者阅读的4本经典书籍
2016/09/23 PHP
PHP微信PC二维码登陆的实现思路
2017/07/13 PHP
php实现微信公众号创建自定义菜单功能的实例代码
2019/06/11 PHP
JavaScript使用prototype定义对象类型
2007/02/07 Javascript
在textarea文本域中显示HTML代码的方法
2007/03/06 Javascript
JavaScript 实现完美兼容多浏览器的复制功能代码
2015/04/28 Javascript
javascript insertAfter()定义与用法示例
2016/07/25 Javascript
jQuery html表格排序插件tablesorter使用方法详解
2017/02/10 Javascript
基于JavaScript实现图片剪切效果
2017/03/07 Javascript
Angularjs修改密码的实例代码
2017/05/26 Javascript
Vuex利用state保存新闻数据实例
2017/06/28 Javascript
用js屏蔽被http劫持的浮动广告实现方法
2017/08/10 Javascript
详解nodejs中express搭建权限管理系统
2017/09/15 NodeJs
Bootstrap 模态框多次显示后台提交多次BUG的解决方法
2017/12/26 Javascript
nodejs简单访问及操作mysql数据库的方法示例
2018/03/15 NodeJs
Vue.js中的computed工作原理
2018/03/22 Javascript
vue项目中使用lib-flexible解决移动端适配的问题解决
2018/08/23 Javascript
element-ui中的select下拉列表设置默认值方法
2018/08/24 Javascript
vue项目配置使用flow类型检查的步骤
2020/03/18 Javascript
JS中作用域以及变量范围分析
2020/07/18 Javascript
javascript开发实现贪吃蛇游戏
2020/07/31 Javascript
Python实现多线程下载文件的代码实例
2014/06/01 Python
以911新闻为例演示Python实现数据可视化的教程
2015/04/23 Python
使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件及出现问题解决方法
2019/09/06 Python
执行Django数据迁移时报 1091错误及解决方法
2019/10/14 Python
Python Pygame实现俄罗斯方块
2021/02/19 Python
html5将图片转换成base64的实例代码
2016/09/21 HTML / CSS
英国外籍人士的在线超市:British Corner Shop
2019/06/03 全球购物
能否解释一下XSS cookie盗窃是什么意思
2012/06/02 面试题
竞选班干部演讲稿600字
2014/08/20 职场文书
公司收款委托书范本
2014/09/20 职场文书
敬业奉献模范事迹材料(2016精选版)
2016/02/26 职场文书
sql字段解析器的实现示例
2021/06/23 SQL Server
sass 常用备忘案例详解
2021/09/15 HTML / CSS
未发现nvidia显卡怎么办?Win11系统中未检测到nvidia显卡解决教程
2022/04/08 数码科技