php实现读取手机客户端浏览器的类

yipeiwu_com6年前PHP代码库

本文实例讲述了php实现读取手机客户端浏览器的类。分享给大家供大家参考。具体分析如下:

这里介绍的手机信息函数类有取手机号码,浏览器报头信息,取得手机类型,取得手机IP等功能。

复制代码 代码如下:
<?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( '/(.*,)(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程序设计有所帮助。

相关文章

php获取$_POST同名参数数组的实现介绍

今天写php的时候发现$_POST["arr"]无法获取参数arr的数组,记录一下。例如有以下表单需要提交:复制代码 代码如下:  <input type="checkbox" n...

php一个找二层目录的小东东

php版 复制代码 代码如下: <?php set_time_limit(0); $path = 'D:/Hosting'; $somefile = $_GET['key']; $...

Linux编译升级php的详细方法

服务器环境:CentOS – 5.4php升级:5.4.14 - 5.5.0升级心得:比较顺利,但是有一点需要说明:eaccelerator无法兼容php5.5.0,好在php在5.5....

php 高性能书写

从.NET转去做PHP4年了,最近开始追求高性能了~~ 所以开始觉得是时候要写写博客了~ 来段发现物先~ 复制代码 代码如下: $arr = array( 'attr1' => 1...

PHP获取对象属性的三种方法实例分析

本文实例讲述了PHP获取对象属性的三种方法。分享给大家供大家参考,具体如下: 今天查看yii源码,发现yii\base\Model中的attribute()方法是通过反射获取对象的pub...