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学习 计数器实例代码
Jun 15 PHP
PHP 实现多服务器共享 SESSION 数据
Aug 15 PHP
php读取本地文件常用函数(fopen与file_get_contents)
Sep 09 PHP
php通过隐藏表单控件获取到前两个页面的url
Sep 09 PHP
Windows7下的php环境配置教程
Feb 28 PHP
php身份证号码检查类实例
Jun 18 PHP
php加密之discuz内容经典加密方式实例详解
Feb 04 PHP
php简单生成一组与多组随机字符串的方法
May 09 PHP
php7 安装yar 生成docker镜像
May 09 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
Aug 31 PHP
学习thinkphp5.0验证类使用方法
Nov 16 PHP
PHP判断访客是否手机端(移动端浏览器)访问的方法总结【4种方法】
Mar 27 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
CodeIgniter辅助之第三方类库third_party用法分析
2016/01/20 PHP
精通JavaScript 纠正 cleanWhitespace函数
2010/03/11 Javascript
js以对象为索引的关联数组
2010/07/04 Javascript
Ext 今日学习总结
2010/09/19 Javascript
jquery 检测元素是否存在的实例代码
2013/11/19 Javascript
JavaScript设计模式学习之“类式继承”
2015/03/12 Javascript
JQuery分屏指示器图片轮换效果实例
2015/05/21 Javascript
Jsonp 关键字详解及json和jsonp的区别,ajax和jsonp的区别
2015/12/30 Javascript
老生常谈JavaScript数组的用法
2016/06/10 Javascript
BootStrap Table 分页后重新搜索问题的解决办法
2016/08/08 Javascript
JS中setTimeout和setInterval的最大延时值详解
2017/02/13 Javascript
Angular通过angular-cli来搭建web前端项目的方法
2017/07/27 Javascript
Node.js Express安装与使用教程
2018/05/11 Javascript
js实现网页同时进行多个倒计时功能
2019/02/25 Javascript
通过js示例讲解时间复杂度与空间复杂度
2019/08/06 Javascript
js tab栏切换代码实例解析
2019/09/03 Javascript
环形加载进度条封装(Vue插件版和原生js版)
2019/12/04 Javascript
JS async 函数的含义和用法实例总结
2020/04/08 Javascript
easyUI使用分页过滤器对数据进行分页操作实例分析
2020/06/01 Javascript
用smtplib和email封装python发送邮件模块类分享
2014/02/17 Python
Python 实现数据库(SQL)更新脚本的生成方法
2017/07/09 Python
Python实现判断一行代码是否为注释的方法
2018/05/23 Python
在PyCharm中实现关闭一个死循环程序的方法
2018/11/29 Python
python里dict变成list实例方法
2019/06/26 Python
html5+svg学习指南之SVG基础知识
2014/12/17 HTML / CSS
德国高端单身人士交友网站:ElitePartner
2018/12/02 全球购物
英国最好的温室之家:Greenhouses Direct
2019/07/13 全球购物
《走一步再走一步》教学反思
2014/02/15 职场文书
含预算的公司户外活动方案
2014/08/16 职场文书
运动会广播稿200字(10篇)
2014/10/12 职场文书
营业用房租赁协议书
2014/11/26 职场文书
2014年保卫科工作总结
2014/12/05 职场文书
领导欢迎词致辞
2015/01/23 职场文书
英语教师个人总结
2015/02/09 职场文书
PostgreSQL存储过程实用脚本(二):创建函数入门
2021/04/05 PostgreSQL
html+css实现环绕倒影加载特效
2021/07/07 HTML / CSS