模板里使用php判断手机还是pc分别写代码


phpok有个很好的功能是可以为pc或者mobile制作不同的模板,程序会自动判断调用,这样在不同的终端会呈现2套完全不同的布局。

这种情况对于做PC和手机端布局差异较大的时候特别有用,国内不少cms也有此功能。

这种实现方式的好处是可以得到相同的URL。

但是我们使用Couchcms或者部分其他的cms并没有设计这种功能怎么办呢,这里有个超简单的实现方式:

在模板里直接判断是手机端还是电脑端,再分别写代码(在一个模板里),代码如下:

<?php
function isMobileAgent()
{
  $bool = false;
  $userAgent = strtolower($_SERVER['HTTP_USER_AGENT']);
  if (strpos($userAgent, 'android') && strpos($userAgent, 'mobile')) $bool = true;
  else if (strpos($userAgent, 'iphone')) $bool = true;
  else if (strpos($userAgent, 'ipod')) $bool = true;
  return $bool;
}
?>

<?php if(isMobileAgent()): ?>
这里写手机版代码
<?php else: ?>
这里电脑端布局
<?php endif; ?>

[记录]Windows Server 2012 R2系统更新失败无法重启的解决方案

一次在运维公司内部服务器时候,重启过程中提示“更新并重启”手欠点了下,后来系统再也无法启动,陷入了“您的系统遇到错误需要重启…

日期:2023-11-13

破除windows server 2012 局域网远程桌面120天限制

“由于没有远程桌面授权服务器可以提供许可证,远程会话被中断”,或者提示“您的免费授权期限还剩20天”这样的描述。…

日期:2023-09-22

使用Mac系统里自带的php apache搭建php开发环境

1. 查看自带的php版本,在终端输入命令: php -v WendeiMac:lockin wenzhang$ php -v PHP 7.1.33 (cli)…

日期:2023-09-13

新买的笔记本Win11系统如何跳过联网登录使用本地登录

记得win11之前的系统一开始安装激活的时候,有需要联网激活,但是也有一个“我没有internet”或者使用“本地登录选项&…

日期:2023-07-26

Wordpress显示数据库的查询次数和时间

第一、在主题的funtions.php里添加如下代码,然后通过前台查看源代码查看页面的数据库查询次数和时间 //显示数据库查询次数、查询时间及内存占用的代码 f…

日期:2023-07-05

Imac环境安装sublime以及sass自动编译

Sublime编辑器写代码很爽,非常顺畅,现在讲一下sass插件的安装和保存自动编译。 第一步:安装Ruby,Sass依赖于ruby,所以必须安装ruby,我们…

日期:2023-05-16

模板里使用php判断手机还是pc分别写代码

phpok有个很好的功能是可以为pc或者mobile制作不同的模板,程序会自动判断调用,这样在不同的终端会呈现2套完全不同的布局。 这种情况对于做PC和手机端布…

日期:2022-05-28