用户打开网站首先判断终端,手机登录自动跳转到手机模板,pc登录跳转到pc模板
1、首先修改index.php文件,添加如下代码
//php判断客户端是否为手机
//$agent = $_SERVER['HTTP_USER_AGENT']; //这样写有bug
$agent = isset($_SERVER['HTTP_USER_AGENT'])
? strtolower($_SERVER['HTTP_USER_AGENT'])
: '';
if(strpos($agent,"NetFront") || strpos($agent,"iPhone") || strpos($agent,"MIDP-2.0") || strpos($agent,"Opera Mini") || strpos($agent,"UCWEB") || strpos($agent,"Android") || strpos($agent,"Windows CE") || strpos($agent,"SymbianOS")) {
//开启手机模板
define("TPL_PHONE", true);
}else{
define("TPL_PHONE", false);
}
2、生成两个配置文件,在后台选择模板文件,然后提交如图

然后找到生成的配置文件,在(data\conf)目录下
修改第一次生成文件名,再提交一次,总之需生成两个配置文件

config.php配置文件代码如下:
'SP_DEFAULT_THEME' => 'simplebootx',
'DEFAULT_THEME' => 'simplebootx',
'SP_ADMIN_STYLE' => 'bluesky',
'URL_MODEL' => '0',
'URL_HTML_SUFFIX' => '',
'UCENTER_ENABLED' => 1,
'COMMENT_NEED_CHECK' => 0,
'COMMENT_TIME_INTERVAL' => 60,
'MOBILE_TPL_ENABLED' => 1,
);?>
config_ph.php配置文件代码如下:
'SP_DEFAULT_THEME' => 'simplebootx_mobile',
'DEFAULT_THEME' => 'simplebootx_mobile',
'SP_ADMIN_STYLE' => 'bluesky',
'URL_MODEL' => '0',
'URL_HTML_SUFFIX' => '',
'UCENTER_ENABLED' => 1,
'COMMENT_NEED_CHECK' => 0,
'COMMENT_TIME_INTERVAL' => 60,
'MOBILE_TPL_ENABLED' => 1,
);?>
3、修改2个文件(引用配置)
一、application\Common\Conf\config.php
第八行,添加如下代码:
if(file_exists("data/conf/config.php")){
if(TPL_PHONE){
$runtime_config=include "data/conf/config_ph.php";
}else{
$runtime_config=include "data/conf/config.php";
}
二、application\Common\Common\function.php
209行,添加如下代码:
if(TPL_PHONE){
$config_file="./data/conf/config_ph.php";
}else{
$config_file="./data/conf/config.php";
}
if(file_exists($config_file)){
$configs=include $config_file;
}else {
$configs=array();
}
本文介绍了如何通过PHP实现网站移动端和PC端的自动适配。首先在index.php中添加代码检测用户代理,根据设备类型定义模板变量。然后生成两个配置文件,分别对应手机和PC模板。最后,在应用的配置文件中根据TPL_PHONE变量加载相应的配置文件,实现不同设备的页面展示。
193

被折叠的 条评论
为什么被折叠?



