php判斷終端設備,php判斷客戶端

本文目錄一覽:

php判斷終端是手機還是電腦訪問網站

可以參考下這段代碼,主要是通過HTTP的一些請求判斷終端類型,詳見代碼。

?php 

function check_wap() {  

    if (isset($_SERVER[‘HTTP_VIA’])) return true;  

    if (isset($_SERVER[‘HTTP_X_NOKIA_CONNECTION_MODE’])) return true;  

    if (isset($_SERVER[‘HTTP_X_UP_CALLING_LINE_ID’])) return true;  

    if (strpos(strtoupper($_SERVER[‘HTTP_ACCEPT’]),”VND.WAP.WML”)  0) {  

        // Check whether the browser/gateway says it accepts WML.  

        $br = “WML”;  

    } else {  

        $browser = isset($_SERVER[‘HTTP_USER_AGENT’]) ? trim($_SERVER[‘HTTP_USER_AGENT’]) : ”;  

        if(empty($browser)) return true;

        $mobile_os_list=array(‘Google Wireless Transcoder’,’Windows CE’,’WindowsCE’,’Symbian’,’Android’,’armv6l’,’armv5′,’Mobile’,’CentOS’,’mowser’,’AvantGo’,’Opera Mobi’,’J2ME/MIDP’,’Smartphone’,’Go.Web’,’Palm’,’iPAQ’);  

              

        $mobile_token_list=array(‘Profile/MIDP’,’Configuration/CLDC-‘,’160×160′,’176×220′,’240×240′,’240×320′,’320×240′,’UP.Browser’,’UP.Link’,’SymbianOS’,’PalmOS’,’PocketPC’,’SonyEricsson’,’Nokia’,’BlackBerry’,’Vodafone’,’BenQ’,’Novarra-Vision’,’Iris’,’NetFront’,’HTC_’,’Xda_’,’SAMSUNG-SGH’,’Wapaka’,’DoCoMo’,’iPhone’,’iPod’);  

              

        $found_mobile=checkSubstrs($mobile_os_list,$browser) ||  

                  checkSubstrs($mobile_token_list,$browser); 

if($found_mobile)

$br =”WML”;

else $br = “WWW”;

    }  

    if($br == “WML”) {  

        return true;  

    } else {  

        return false;  

    }  

}

function checkSubstrs($list,$str){

$flag = false;

for($i=0;$icount($list);$i++){

if(strpos($str,$list[$i])  0){

$flag = true;

break;

}

}

return $flag;

}

if(check_wap()){

echo “wap”;

}else{

echo “web”;

}

?

更多問題可以去php中文網問答社區提問,大神在線幫你解決,希望對你有幫助

PHP網站加了判斷手機終端還是電腦終端代碼後,手機就不能進入電腦網站。

進入php源程序目錄中的ext目錄中,這裡存放着各個擴展模塊的源代碼,選擇你需要的模塊,比如curl模塊:cd curl

執行phpize生成編譯文件,phpize在PHP安裝目錄的bin目錄下

/usr/local/php5/bin/phpize

運行時,可能會報錯:Cannot find autoconf. Please check your autoconf installation and

the $PHP_AUTOCONF

environment variable is set correctly and then rerun this

script.,需要安裝autoconf:

yum install autoconf(RedHat或者CentOS)、apt-get install

autoconf(Ubuntu Linux)

/usr/local/php5/bin/php -v

執行這個命令時,php會去檢查配置文件是否正確,如果有配置錯誤,

這裡會報錯,可以根據錯誤信息去排查!

網頁怎麼判斷是電腦瀏覽還是手機終端

不同的網頁判斷基準不一樣

一、php/html網頁判斷標準

1、php網頁是根據用戶訪問的設備分辨率來判斷是電腦瀏覽器或者是手機瀏覽器的。

2、例如php通過如下代碼即可實現統計:

?php 

function check_wap() { 

if (isset($_SERVER[‘HTTP_VIA’])) return true; 

if (isset($_SERVER[‘HTTP_X_NOKIA_CONNECTION_MODE’])) return true; 

if (isset($_SERVER[‘HTTP_X_UP_CALLING_LINE_ID’])) return true; 

if (strpos(strtoupper($_SERVER[‘HTTP_ACCEPT’]),”VND.WAP.WML”)  0) { 

// Check whether the browser/gateway says it accepts WML. 

$br = “WML”; 

} else { 

$browser = isset($_SERVER[‘HTTP_USER_AGENT’]) ? trim($_SERVER[‘HTTP_USER_AGENT’]) : ”; 

if(empty($browser)) return true; 

$mobile_os_list=array(‘Google Wireless Transcoder’,’Windows CE’,’WindowsCE’,’Symbian’,’Android’,’armv6l’,’armv5′,’Mobile’,’CentOS’,’mowser’,’AvantGo’,’Opera Mobi’,’J2ME/MIDP’,’Smartphone’,’Go.Web’,’Palm’,’iPAQ’); 

$mobile_token_list=array(‘Profile/MIDP’,’Configuration/CLDC-‘,’160×160′,’176×220′,’240×240′,’240×320′,’320×240′,’UP.Browser’,’UP.Link’,’SymbianOS’,’PalmOS’,’PocketPC’,’SonyEricsson’,’Nokia’,’BlackBerry’,’Vodafone’,’BenQ’,’Novarra-Vision’,’Iris’,’NetFront’,’HTC_’,’Xda_’,’SAMSUNG-SGH’,’Wapaka’,’DoCoMo’,’iPhone’,’iPod’); 

$found_mobile=checkSubstrs($mobile_os_list,$browser) || 

checkSubstrs($mobile_token_list,$browser); 

if($found_mobile) 

$br =”WML”; 

else $br = “WWW”; 

if($br == “WML”) { 

return true; 

} else { 

return false; 

function checkSubstrs($list,$str){ 

$flag = false; 

for($i=0;$icount($list);$i++){ 

if(strpos($str,$list[$i])  0){ 

$flag = true; 

break; 

return $flag; 

if(check_wap()){ 

echo “wap”; 

}else{ 

echo “web”; 

?

二、java javascript的判斷標準:

1、JavaScript不管是判斷電腦瀏覽器還是手機瀏覽器,都是通過User Agent 來判斷;

2、以 javascript判斷實力如下:

coding-1 lang=”other”  

script type=”text/javascript”  

var browser={   

versions:function(){   

var u = navigator.userAgent, app = navigator.appVersion;   

return {   

trident: u.indexOf(‘Trident’)  -1, //IE內核   

presto: u.indexOf(‘Presto’)  -1, //opera內核   

webKit: u.indexOf(‘AppleWebKit’)  -1, //蘋果、谷歌內核   

gecko: u.indexOf(‘Gecko’)  -1  u.indexOf(‘KHTML’) == -1, //火狐內核   

mobile: !!u.match(/AppleWebKit.*Mobile.*/)||!!u.match(/AppleWebKit/), //是否為移動終端   

ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios終端   

android: u.indexOf(‘Android’)  -1 || u.indexOf(‘Linux’)  -1, //android終端或者uc瀏覽器   

iPhone: u.indexOf(‘iPhone’)  -1 || u.indexOf(‘Mac’)  -1, //是否為iPhone或者QQHD瀏覽器   

iPad: u.indexOf(‘iPad’)  -1, //是否iPad   

webApp: u.indexOf(‘Safari’) == -1 //是否web應該程序,沒有頭部與底部   

};  

}()  

}  

  

document.writeln(” 是否為移動終端: “+browser.versions.mobile);  

document.writeln(” ios終端: “+browser.versions.ios);  

document.writeln(” android終端: “+browser.versions.android);  

document.writeln(” 是否為iPhone: “+browser.versions.iPhone);  

document.writeln(” 是否iPad: “+browser.versions.iPad);  

document.writeln(navigator.userAgent);   

/script  

/coding

PHP怎麼判斷終端是不是電腦訪問

這是JS代碼,PHP也可以做到

 

//判斷是否屬手機

function is_mobile() {

    $user_agent = $_SERVER[‘HTTP_USER_AGENT’];

    $mobile_agents = Array(“240×320″,”acer”,”acoon”,”acs-“,”abacho”,”ahong”,”airness”,”alcatel”,”amoi”,”android”,”anywhereyougo.com”,”applewebkit/525″,”applewebkit/532″,”asus”,”audio”,”au-mic”,”avantogo”,”becker”,”benq”,”bilbo”,”bird”,”blackberry”,”blazer”,”bleu”,”cdm-“,”compal”,”coolpad”,”danger”,”dbtel”,”dopod”,”elaine”,”eric”,”etouch”,”fly “,”fly_”,”fly-“,”go.web”,”goodaccess”,”gradiente”,”grundig”,”haier”,”hedy”,”hitachi”,”htc”,”huawei”,”hutchison”,”inno”,”ipad”,”ipaq”,”ipod”,”jbrowser”,”kddi”,”kgt”,”kwc”,”lenovo”,”lg “,”lg2″,”lg3″,”lg4″,”lg5″,”lg7″,”lg8″,”lg9”,”lg-“,”lge-“,”lge9″,”longcos”,”maemo”,”mercator”,”meridian”,”micromax”,”midp”,”mini”,”mitsu”,”mmm”,”mmp”,”mobi”,”mot-“,”moto”,”nec-“,”netfront”,”newgen”,”nexian”,”nf-browser”,”nintendo”,”nitro”,”nokia”,”nook”,”novarra”,”obigo”,”palm”,”panasonic”,”pantech”,”philips”,”phone”,”pg-“,”playstation”,”pocket”,”pt-“,”qc-“,”qtek”,”rover”,”sagem”,”sama”,”samu”,”sanyo”,”samsung”,”sch-“,”scooter”,”sec-“,”sendo”,”sgh-“,”sharp”,”siemens”,”sie-“,”softbank”,”sony”,”spice”,”sprint”,”spv”,”symbian”,”tablet”,”talkabout”,”tcl-“,”teleca”,”telit”,”tianyu”,”tim-“,”toshiba”,”tsm”,”up.browser”,”utec”,”utstar”,”verykool”,”virgin”,”vk-“,”voda”,”voxtel”,”vx”,”wap”,”wellco”,”wig browser”,”wii”,”windows ce”,”wireless”,”xda”,”xde”,”zte”);

    $is_mobile = false;

    foreach ($mobile_agents as $device) {

        if (stristr($user_agent, $device)) {

            $is_mobile = true;

            break;

        }

    }

    return $is_mobile;

}

//使用很簡單

if( is_mobile() ){

  echo ‘該頁面是手機頁面,請使用移動設備訪問,謝謝!’;

}

網上有很多這樣的代碼,不滿意可以找找

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/236244.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 11:59
下一篇 2024-12-12 11:59

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • Python調用crt telnet客戶端的實現

    本篇文章將詳細介紹如何使用Python調用crt telnet客戶端。我們將從以下幾個方面進行闡述: 一、安裝crt telnet客戶端 首先,我們需要下載並安裝crt telne…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若服務器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • 跨域通信浮標——實現客戶端之間的跨域通信

    本文將介紹跨域通信浮標的使用方法,該浮標可以實現客戶端之間的跨域通信,解決了瀏覽器同源策略的限制,讓開發者能夠更加方便地進行跨域通信。 一、浮標的原理 跨域通信浮標的原理是基於浮動…

    編程 2025-04-27
  • Python服務器客戶端

    本文將從以下幾個方面對Python服務器客戶端進行詳細闡述:socket編程、HTTP協議、Web框架、異步IO。 一、socket編程 Python的socket模塊是為網絡編程…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • C# Socket關閉後客戶端仍可連接的解決方法

    對於C# Socket通信中的一些問題,多數人可能已經熟知,但是有些問題仍然困擾着一部分人,例如Socket關閉後,客戶端仍然可以連接。本篇文章將在此問題為中心,圍繞該問題的原因和…

    編程 2025-04-27
  • PHP與Python的比較

    本文將會對PHP與Python進行比較和對比分析,包括語法特性、優缺點等方面。幫助讀者更好地理解和使用這兩種語言。 一、語法特性 PHP語法特性: <?php // 簡單的P…

    編程 2025-04-27

發表回復

登錄後才能評論