检测移动或Windows PHP

时间:2016-01-13 17:06:18

标签: php redirect mobile web

我想建立一个网站,我搞砸了。我想制作两个版本,一个用于桌面,一个用于移动,但不知道如何重定向人..我想有两个文件夹,移动和web和文件index.php。如果他们使用手机我想在移动文件夹中重定向,如果他们使用PC重定向到网络文件夹。

我怎么能这样做?感谢

对不起英语

1 个答案:

答案 0 :(得分:0)

案例1:将网站重定向到移动版

假设我们有一个普通网站,如果从移动设备查看,我们需要重定向到移动版本。移动检测所需的所有代码都在单个文件“Mobile_Detect.php”中,我们可以将其包含在我们的网页或主索引文件中。为简化讨论,我们假设您有一个带有单个索引文件的网站“example1.com”,如果检测到移动设备,则需要重定向到“mobile.example1.com”。我们需要将以下内容放在'example1.com'索引文件的标题中。

/* Change path info depending on your file locations */
require_once 'Mobile_Detect.php';
$detect = new Mobile_Detect;

if($detect->isMobile()) {
    header('Location: http://mobile.example1.com/');
    exit;
}

案例2:根据设备加载不同的资源

我们可以根据用户设备配置文件加载或修改现有内容。例如,我们可以为移动设备或平板电脑加载不同的CSS。

$detect = new Mobile_Detect;

if($detect->isMobile() || $detect->isTablet()) {
    echo "<link rel='stylesheet' href='mobile.css type='text/css' />";
} else {
    echo "<link rel='stylesheet' href='style.css type='text/css' />";
}

您也可以使用Javascript:

<script type="text/javascript">
  <!--
  if (screen.width <= 800) {
    window.location = "http://m.domain.com";
  }
  //-->
</script>

您可以使用.htaccess重定向根据浏览器支持的MIME类型传输访问者。例如,如果用户的浏览器接受包含WML(无线标记语言)的mime类型,则很可能是移动设备。

以下代码应放在.htaccess文件中:

RewriteEngine On
# Check for mime types commonly accepted by mobile devices
RewriteCond %{HTTP_ACCEPT} "text\/vnd\.wap\.wml|application\/vnd\.wap\.xhtml\+xml" [NC]
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^ http://m.domain.com%{REQUEST_URI} [R,L]

如果每个设备有2个站点(这里不是最好的事情),你可以在root上有一个index.php文件:

<script type="text/javascript">
  <!--
  if (screen.width <= 800) {
    window.location = "http://your.domain.com/mobile"; 
  } else {  window.location = "http://your.domain.com/desktop";  }   
  //-->
</script>