通过一段时间的自学,也积累了一点有用的PHP小片段,发上来做个记录,顺便也帮助大家,以后遇到有用的片段还会继续更新滴!

1、设置PHP页面编码

header("Content-Type:text/html; charset=GBK");

2、屏蔽PHP错误提示

error_reporting(0);

3、网址跳转

直接跳转

header("Location: https://ssk.wiki/");

延迟3秒跳转

header("refresh:3;url=https://ssk.wiki/");

4、移动客户端判断函数

wordpress版

function wp_is_mobile() {
    static $is_mobile;

    if ( isset($is_mobile) )
        return $is_mobile;

    if ( empty($_SERVER['HTTP_USER_AGENT']) ) {
        $is_mobile = false;
    } elseif ( strpos($_SERVER['HTTP_USER_AGENT'], 'Mobile') !== false // many mobile devices (all iPhone, iPad, etc.)
        || strpos($_SERVER['HTTP_USER_AGENT'], 'Android') !== false
        || strpos($_SERVER['HTTP_USER_AGENT'], 'Silk/') !== false
        || strpos($_SERVER['HTTP_USER_AGENT'], 'Kindle') !== false
        || strpos($_SERVER['HTTP_USER_AGENT'], 'BlackBerry') !== false
        || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mini') !== false
        || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mobi') !== false ) {
            $is_mobile = true;
    } else {
        $is_mobile = false;
    }

    return $is_mobile;
}

discuz版

function isMobile(){  
    $useragent=isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : '';  
    $useragent_commentsblock=preg_match('|\(.*?\)|',$useragent,$matches)>0?$matches[0]:'';        
    function CheckSubstrs($substrs,$text){  
        foreach($substrs as $substr)  
            if(false!==strpos($text,$substr)){  
                return true;  
            }  
            return false;  
    }
    $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,$useragent_commentsblock) ||  
              CheckSubstrs($mobile_token_list,$useragent);  

    if ($found_mobile){  
        return true;  
    }else{  
        return false;  
    }  
}

移动客户端判断函数使用方法:

任选上面两个版本(wordpress、discuz)之一,保存为 ismobile.php ,然后修改需要判断移动客户端的页面为
<?php
header("Content-Type:text/html; charset=GBK");
include "ismobile.php";

//wordpress判断
if(wp_is_mobile()){
    echo "<p>wp:移动客户端</p>";
}else{
    echo "<p>wp:非移动客户端</p>";
}

//discuz判断
if(isMobile()){
    echo "<p>dz:移动客户端</p>";
}else{
    echo "<p>dz:非移动客户端</p>";
}
?>

下面是我自己的应用实例,自己加工的代码高亮程序的电脑版和手机版的自动切换

电脑版index.php切换至手机版mobile.php:

<?php
include "ismobile.php";
if(isMobile()){
    header("Location: mobile.php?id=".$_GET['id']);
}
?>

手机版mobile.php切换至电脑版index.php:

<?php
include "ismobile.php";
if(!isMobile()){
    header("Location: index.php?id=".$_GET['id']);
}
?>

演示地址:鼠标放在此处显示二维码,手机扫描即可访问本网址,点击直接访问:https://ssk.wiki/SSKhighlighter/code.php?id=17
您可以使用电脑和手机分别查看本页面,使用浏览器UA切换插件可以更方便的查看到跳转效果(地址栏网址会发生改变!电脑版:code.php/index.php,手机访问则会跳转至mobile.php)

Chrome内核浏览器 UA切换插件下载地址: https://chrome.google.com/webstore/detail/user-agent-switcher/ffhkkpnppgnfaobgihpdblnhmmbodake

上面这个需要翻墙,您也可以下载我打包好的,百度网盘下载地址:
http://www.91txh.com/urlwp.php?id=6
wordpress > 201411262100 > user agent switcher.rar

最后修改:2020 年 03 月 15 日 03 : 33 PM
如果觉得我的文章对你有用,请随意赞赏