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

yipeiwu_com7年前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性能分析之php-fpm慢执行日志slow log用法浅析

本文实例讲述了php性能分析之php-fpm慢执行日志slow log用法。分享给大家供大家参考,具体如下: 众所周知,mysql有slow query log,根据慢查询日志,我们可以...

批量修改RAR文件注释的php代码

我们打开WINRAR的帮助文件,帮助文件中提到了在命令行模式下修改RAR文件注释及添加压缩文档的两个参数分别为A\C,WINRAR的说明文件如下: 从当前文件夹添加全部 *.hlp 文件...

PHP Ajax实现页面无刷新发表评论

大家都有在网站发表评论的经历,传统的发表过程无非是:发表->提交页面表单->等待刷新页面,这样在网络比较拥挤的时候,往往需要漫长的等待,今天介绍用PHP+Ajax实现页面无刷...

php中foreach结合curl实现多线程的方法分析

本文实例讲述了php中foreach结合curl实现多线程的方法。分享给大家供大家参考,具体如下: 多线程是php不支持的但我们可以通过foreach来伪多线程了,但这个伪多线程速度不一...

PHP-redis中文文档介绍

phpredis是php的一个扩展,效率是相当高有链表排序功能,对创建内存级的模块业务关系 很有用;以下是redis官方提供的命令使用技巧: 下载地址如下: https://...