php實(shí)現(xiàn)讀取手機(jī)客戶端瀏覽器的類

字號(hào):


    這篇文章主要介紹了php實(shí)現(xiàn)讀取手機(jī)客戶端瀏覽器的類,可實(shí)現(xiàn)取手機(jī)號(hào)碼,瀏覽器報(bào)頭信息,取得手機(jī)類型,取得手機(jī)IP等功能,需要的朋友可以參考下
    本文實(shí)例講述了php實(shí)現(xiàn)讀取手機(jī)客戶端瀏覽器的類。分享給大家供大家參考。具體分析如下:
    這里介紹的手機(jī)信息函數(shù)類有取手機(jī)號(hào)碼,瀏覽器報(bào)頭信息,取得手機(jī)類型,取得手機(jī)IP等功能。
    代碼如下:
    <?php
    /**
    * 類名: mobile
    * 描述: 手機(jī)信息類
    * 其他: 偶然 編寫
    */
    class mobile{
    /**
    * 函數(shù)名稱: getPhoneNumber
    * 函數(shù)功能: 取手機(jī)號(hào)
    * 輸入?yún)?shù): none
    * 函數(shù)返回值: 成功返回號(hào)碼,失敗返回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;
    }
    }
    /**
    * 函數(shù)名稱: getHttpHeader
    * 函數(shù)功能: 取頭信息
    * 輸入?yún)?shù): none
    * 函數(shù)返回值: 成功返回號(hào)碼,失敗返回false
    * 其它說明: 說明
    */
    function getHttpHeader(){
    $str = ' ';
    foreach ($_SERVER as $key=> $val){
    $gstr = str_replace( "& ", "& ",$val);
    $str.= "$key -> ".$gstr. "rn ";
    }
    Return $str;
    }
    /**
    * 函數(shù)名稱: getUA
    * 函數(shù)功能: 取UA
    * 輸入?yún)?shù): none
    * 函數(shù)返回值: 成功返回號(hào)碼,失敗返回false
    * 其它說明: 說明
    */
    function getUA(){
    if (isset($_SERVER[ 'HTTP_USER_AGENT '])){
    Return $_SERVER[ 'HTTP_USER_AGENT '];
    }else{
    Return false;
    }
    }
    /**
    * 函數(shù)名稱: getPhoneType
    * 函數(shù)功能: 取得手機(jī)類型
    * 輸入?yún)?shù): none
    * 函數(shù)返回值: 成功返回string,失敗返回false
    * 其它說明: 說明
    */
    function getPhoneType(){
    $ua = $this-> getUA();
    if($ua!=false){
    $str = explode( ' ',$ua);
    Return $str[0];
    }else{
    Return false;
    }
    }
    /**
    * 函數(shù)名稱: isOpera
    * 函數(shù)功能: 判斷是否是opera
    * 輸入?yún)?shù): none
    * 函數(shù)返回值: 成功返回string,失敗返回false
    * 其它說明: 說明
    */
    function isOpera(){
    $uainfo = $this-> getUA();
    if (preg_match( '/.*Opera.*/i ',$uainfo)){
    Return true;
    }else{
    Return false;
    }
    }
    /**
    * 函數(shù)名稱: isM3gate
    * 函數(shù)功能: 判斷是否是m3gate
    * 輸入?yún)?shù): none
    * 函數(shù)返回值: 成功返回string,失敗返回false
    * 其它說明: 說明
    */
    function isM3gate(){
    $uainfo = $this-> getUA();
    if (preg_match( '/M3Gate/i ',$uainfo)){
    Return true;
    }else{
    Return false;
    }
    }
    /**
    * 函數(shù)名稱: getHttpAccept
    * 函數(shù)功能: 取得HA
    * 輸入?yún)?shù): none
    * 函數(shù)返回值: 成功返回string,失敗返回false
    * 其它說明: 說明
    */
    function getHttpAccept(){
    if (isset($_SERVER[ 'HTTP_ACCEPT '])){
    Return $_SERVER[ 'HTTP_ACCEPT '];
    }else{
    Return false;
    }
    }
    /**
    * 函數(shù)名稱: getIP
    * 函數(shù)功能: 取得手機(jī)IP
    * 輸入?yún)?shù): none
    * 函數(shù)返回值: 成功返回string
    * 其它說明: 說明
    */
    function getIP(){
    $ip=getenv( 'REMOTE_ADDR ');
    $ip_ = getenv( 'HTTP_X_FORWARDED_FOR ');
    if (($ip_ != " ") && ($ip_ != "unknown ")){
    $ip=$ip_;
    }
    return $ip;
    }
    }
    ?>
    希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。