Rumah >rangka kerja php >YII >yii2判断是否来自微信浏览器

yii2判断是否来自微信浏览器

angryTom
angryTomasal
2020-02-17 17:42:282652semak imbas

这篇文章主要介绍了使用yii2判断请求是否来自微信内浏览器,需要的朋友可以参考下。

yii2判断是否来自微信浏览器

yii2判断是否来自微信浏览器

在iPhone下,返回

Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B176 MicroMessenger/4.3.2)

在Android下,返回

Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255)

不难发现微信浏览器为 MicroMessenger ,并且有版本号,也可以判断手机类型为iPhone还是Android

下面是使用原生php进行判断的方法:

public function is_weixin(){ 
    if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false ) {
        return true;
    }
    return false;
}    
if($this->is_weixin()){
    // TODO
}else{
    echo "请使用微信访问本网址。";
}

使用YII实现,yii请求组件提供了支持快速访问常用头的方法:

Yii::$app->request->userAgent; //返回 User-Agent 头。
public function is_weixin(){ 
    if ( strpos(Yii::$app->request->userAgent, 'MicroMessenger') !== false ) {
        return true;
    }
    return false;
}    
if($this->is_weixin()){
    // TODO
}else{
    echo "请使用微信访问本网址。";
}

相关文章教程推荐:yii教程

Atas ialah kandungan terperinci yii2判断是否来自微信浏览器. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn