判断用户是否使用移动设备使用PHP浏览我的网站的最简单方法是什么?
我遇到过许多类,你可以使用,但我希望一个简单的if条件!
有什么办法可以让我这么做吗?
判断用户是否使用移动设备使用PHP浏览我的网站的最简单方法是什么?
我遇到过许多类,你可以使用,但我希望一个简单的if条件!
有什么办法可以让我这么做吗?
当前回答
function isMobileDev(){
if(!empty($_SERVER['HTTP_USER_AGENT'])){
$user_ag = $_SERVER['HTTP_USER_AGENT'];
if(preg_match('/(Mobile|Android|Tablet|GoBrowser|[0-9]x[0-9]*|uZardWeb\/|Mini|Doris\/|Skyfire\/|iPhone|Fennec\/|Maemo|Iris\/|CLDC\-|Mobi\/)/uis',$user_ag)){
return true;
};
};
return false;
}
其他回答
如果您的服务器支持get_browser(自PHP 4起可用),则非常简单。它们有一个内置的功能来满足你的要求。
参考:https://www.php.net/manual/en/function.get-browser.php
<?php
$browser = get_browser(null, true);
if($browser['ismobiledevice']) {
// Device is mobile
}
?>
您只需要包含user_agent.php文件,该文件可以在PHP页面中的移动设备检测中找到,并使用以下代码。
<?php
//include file
include_once 'user_agent.php';
//create an instance of UserAgent class
$ua = new UserAgent();
//if site is accessed from mobile, then redirect to the mobile site.
if($ua->is_mobile()){
header("Location:http://m.codexworld.com");
exit;
}
?>
没有可靠的方法。您也许可以查看user-agent字符串,但这可能会被欺骗或省略。或者,您也可以使用GeoIP服务来查找客户机的IP地址,但同样,这可以很容易地避免。
也许结合一些javascript和PHP可以达到这个目的
<?php
$string = '<script>';
$string .= 'if ( /Opera|OPR\/|Puffin|Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) { ';
$string .= ' alert("CELL")';
$string .= ' } else {';
$string .= ' alert("NON CELL")';
$string .= ' } ';
$string .= '</script>';
echo $string;
?>
我也将其与纯javascript一起使用
<?php
//-- Very simple way
$useragent = $_SERVER['HTTP_USER_AGENT'];
$iPod = stripos($useragent, "iPod");
$iPad = stripos($useragent, "iPad");
$iPhone = stripos($useragent, "iPhone");
$Android = stripos($useragent, "Android");
$iOS = stripos($useragent, "iOS");
//-- You can add billion devices
$DEVICE = ($iPod||$iPad||$iPhone||$Android||$iOS);
if (!$DEVICE) { ?>
<!-- What you want for all non-mobile devices. Anything with all HTML, PHP, CSS, even full page codes-->
<?php }else{ ?>
<!-- What you want for all mobile devices. Anything with all HTML, PHP, CSS, even full page codes -->
<?php } ?>