<?php

/**

*   类名: mobile

*   描述: 手机信息类

*   其他:

*/

class mobile

{

/**

* 函数名称: getPhoneNumber

* 函数功能: 取手机号

* 输入参数: none

* 函数返回值: 成功返回号码,失败返回false

* 其它说明: 说明

*/

function getPhoneNumber()

{

       if (isset($_SERVER['HTTP_X_NETWORK_INFO']))

       {

         $str1 = $_SERVER['HTTP_X_NETWORK_INFO'];

         $getstr1 = preg_replace('/(.*,)(13[\d]{9})(,.*)/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('/(.*)(13[\d]{9})(.*)/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("&","&amp;",$val);

         $str.= "$key -> ".$gstr."\r\n";

       }

       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;

}

}

$ioopdnuber = new mobile();

echo $ioopdnuber->getPhoneNumber();

?>

wap网站获取访问者手机号PHP类文件的更多相关文章

  1. PHP获取网站图标(favicon.ico)文件

    有的网站源码中加入了这几行代码: <link rel="shortcut icon" href="/favicon.ico" type="ima ...

  2. 一个简单的C#获取Session、设置Session类文件

    一个简单的C#获取Session.设置Session类文件,本类主要实现大家最常用的两个功能: 1.GetSession(string name)根据session名获取session对象: 2.Se ...

  3. 反射方式,获取出集合ArrayList类的class文件对象

    /* * 定义集合类,泛型String * 要求向集合中添加Integer类型 * * 反射方式,获取出集合ArrayList类的class文件对象 * 通过class文件对象,调用add方法 * * ...

  4. .NET C#利用反射获取类文件以及其中的方法&属性 并获取类及方法上的特性

    了解C#特性类并声明我们自己的特性类[AttributeTest]代码如下 using System; namespace AttributeTest { /* 特性说明 特性本质是一个继承和使用了系 ...

  5. ReentrantLock修饰类文件,实现按类获取锁的逻辑

    1.ReentrantLock 给类文件加锁,实现类似synchronized(class)的功能 核心是类文件中,使用static修饰的reentrantLock对象 public class So ...

  6. WAP网站的推广方式(自整合篇)

    WAP网站推广随着无线互联时代的到来,已经日益受到大家的重视.虽然WAP网站的目前盈利模式还不是很清晰,但WAP网站推广的竞争强度将肯定会越来越激烈,下面和大家一起探讨下WAP网站的推广方法. 方法/ ...

  7. C#如何获取快捷方式指向的目标文件

    前几天,做个小程序时遇到的问题,在百度上搜索了很久,没有发现好的解决方案,在英文网站上立刻搜到办法,看来还是国外的资源要全面一些,只是Google经常访问不正常,没办法啊. “C#如何获取快捷方式指向 ...

  8. 手机wap网站建设的方法和技巧

    随着互联网技术的不断进步,越来越多的运营商对于手机wap网站的建设有了更多的投入,手机wap网站的建设和开发要根据网站的特点和经营范围来进行设计和建设,这样才可以提升手机wap网站建设的效果.现在智能 ...

  9. 微信小程序获取用户手机号 记录 (PHP)

    1. 用户登录时需要获取 openid ,同时可以获取 session_key, 二者同时返回, 此时我们要将二者存储在服务端. 2. 小程序端 button 按钮拉起授权, 向api 传递 iv 和 ...

随机推荐

  1. launch failed.Binary not found in Linux/Ubuntu解决方案

    Linux下出现launch failed.Binary not found的解决方案: 首先当你把网上关于mingw的解决方案都看晕了的时候,告诉你,别看关于mingw的了.Linux下不用ming ...

  2. [Java] Eclipse注释模板设置详解

    设置注释模板的入口: Window->Preference->Java->Code Style->Code Template 然后展开Comments节点就是所有需设置注释的元 ...

  3. (转载)ubuntu创建、删除文件及文件夹,强制清空回收站方法

    mkdir 目录名         => 创建一个目录 rmdir 空目录名      => 删除一个空目录 rm 文件名 文件名   => 删除一个文件或多个文件 rm –rf 非 ...

  4. 包加载失败 未能正确加载包“xxx”...

    打开vs2008或者2005如果弹出一个警告对话框 包加载失败 未能正确加载包“xxx” ...... 的字样,就可以用以下方法解决. 在cmd下运行带参数的devenv.exe: "d(盘 ...

  5. scrollerView 轮番图

    scrollView 写在了一个 view 的里面,需要用的时候可以直接拿来用,很方便 // // TopScrollView.h // TabBar框架 // // Created by 叶炯 on ...

  6. Objective-C ,ios,iphone开发基础:多个视图(view)之间的切换,以及视图之间传值。

    所有的视图都继承自 UIViewController,都使用 - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nib ...

  7. centos6.4搭建lnmp服务(转载)

    1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dport 8 ...

  8. Laravel_Elixir_gulp任务利器安装

    目录 说明 安装 1安装gulp 2安装Elixir 3Elixir快速入门 4合并cssjs 5版本控制version 6复制copy 7方法串联 1.说明 详细说明暂时省略,后期补充.小白的角度理 ...

  9. PHP,单双引号的区别‘“”“”’

    一.转义 单引号:只转义\'和\\,其他不转义 双引号:都转义 二.变量解析 单引号:无法解析变量(原样输出) 双引号:可以解析变量 三.速度 单引号:更快 双引号:要分析是否有变量,转义内容更多 结 ...

  10. iframe仿Ajax上传文件

    利用iframe框架完成文件上传 前端页面 <!doctype html> <html lang="en"> <head> <meta c ...