该PHP操作类实现获取手机号
手机头信息,取UA,取得手机类型,判断是否是opera,判断是否是m3gate,取得HA,取得手机IP
代码如下:
- <?php
- /**
- * @desc 手机操作类 获取手机相关信息
- * @since
- */
- class mobile {
- /**
- * 函数名称: getPhoneNumber
- * 函数功能: 取手机号
- * 输入参数: none
- * 函数返回值: 成功返回号码,失败返回false
- * 其它说明: 说明
- */
- public function getPhoneNumber() {
- if (isset($_SERVER['HTTP_X_NETWORK_INFO'])) {
- $str1 = $_SERVER['HTTP_X_NETWORK_INFO'];
- $getstr1 = preg_replace('/(.*,)(11[d])(,.*)/i',"",$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',"",$str3);
- Return $getstr3;
- }elseif (isset($_SERVER['DEVICEID'])) {
- Return $_SERVER['DEVICEID'];
- }else {
- Return false;
- }
- }
- /**
- * 函数名称: getHttpHeader
- * 函数功能: 取头信息
- * 输入参数: none
- * 函数返回值: 成功返回号码,失败返回false
- * 其它说明: 说明
- */
- public function getHttpHeader() {
- $str = "";
- foreach ($_SERVER as $key=>$val) {
- $gstr = str_replace("&","&",$val);
- $str.= "$key -> ".$gstr."rn";
- }
- Return $str;
- }
- /**
- * 函数名称: getUA
- * 函数功能: 取UA
- * 输入参数: none
- * 函数返回值: 成功返回号码,失败返回false
- * 其它说明: 说明
- */
- public function getUA() {
- if (isset($_SERVER['HTTP_USER_AGENT'])) {
- Return $_SERVER['HTTP_USER_AGENT'];
- }else {
- Return false;
- }
- }
- /**
- * 函数名称: getPhoneType
- * 函数功能: 取得手机类型
- * 输入参数: none
- * 函数返回值: 成功返回string,失败返回false
- * 其它说明: 说明
- */
- public function getPhoneType() {
- $ua = $this->getUA();
- if($ua!=false) {
- $str = explode(" ",$ua);
- Return $str[0];
- }else {
- Return false;
- }
- }
- /**
- * 函数名称: isOpera
- * 函数功能: 判断是否是opera
- * 输入参数: none www.knowsky.com
- * 函数返回值: 成功返回string,失败返回false
- * 其它说明: 说明
- */
- public function isOpera() {
- $uainfo = $this->getUA();
- if (preg_match('/.*Opera.*/i',$uainfo)) {
- Return true;
- }else {
- Return false;
- }
- }
- /**
- * 函数名称: isM3gate
- * 函数功能: 判断是否是m3gate
- * 输入参数: none
- * 函数返回值: 成功返回string,失败返回false
- * 其它说明: 说明
- */
- public function isM3gate() {
- $uainfo = $this->getUA();
- if (preg_match('/M3Gate/i',$uainfo)) {
- Return true;
- }else {
- Return false;
- }
- }
- /**
- * 函数名称: getHttpAccept
- * 函数功能: 取得HA
- * 输入参数: none
- * 函数返回值: 成功返回string,失败返回false
- * 其它说明: 说明
- */
- public function getHttpAccept() {
- if (isset($_SERVER['HTTP_ACCEPT'])) {
- Return $_SERVER['HTTP_ACCEPT'];
- }else {
- Return false;
- }
- }
- /**
- * 函数名称: getIP
- * 函数功能: 取得手机IP
- * 输入参数: none
- * 函数返回值: 成功返回string
- * 其它说明: 说明
- */
- public function getIP() {
- $ip=getenv('REMOTE_ADDR');
- $ip_ = getenv('HTTP_X_FORWARDED_FOR');
- if (($ip_ != "") && ($ip_ != "unknown")) {
- $ip=$ip_;
- }
- return $ip;
- }
- }
2017年08月11日 22:08:09 沙发
我总感觉这个PHP获取手机相关信息的代码不准确吧!手机上的APP获取手机什么东西都还要一定的权限的。
2017年06月22日 23:47:40 板凳
我一直以为,PHP不能获取手机相关的信息!