PHP判断QQ浏览器访问,并提示用浏览器打开

发布于 2019-04-30  3.3k 次阅读


本文于 2019年4月30日 11:37 更新,注意查看最新内容

前言

因为不想让龙鲲影视在QQ浏览器打开(防红),所以就有了判断QQ浏览器访问,并提示用其他浏览器打开的这个需求,下面贴代码。

代码

<?
if(strpos($_SERVER{'HTTP_USER_AGENT'}, 'QQ') != FALSE) {
    echo "<script>document.title = '右上角浏览器打开'</script>";
    exit;
}
?>

解析

PHP strpos() 函数:查找字符串在另一字符串中第一次出现的位置。

$_SERVER:一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。

$_SERVER{'HTTP_USER_AGENT'}:如果存在的话,返回当前请求头中 User-Agent: 项的内容。

HTML DOM title 属性:title 属性可返回当前文档的标题( HTML title 元素中的文本)。

用语言来描述这段代码的意思就是:通过查找请求头中的UA信息,如果出现"QQ"字符串,则在浏览器输出一段Js,并截停程序;如果没有出现,则正常执行之后的代码。

Js代码的意思就是将当前文档的标题改为指定的一串字符串。

参考

《关于PHP的$_SERVER{'HTTP_USER_AGENT'}匹配不到Mozilla的奇怪bug》

 


这短短的一生,我们最终都会失去。