QQ、微信、微博、网站四码合一

2018-08-26T03:17:36

工作室要在迎新期间推广要做一个二维码,我就在想能不能做多码合一

[title]原理[/title]

原理非常简单,用正则判断UserAgent,然后根据UserAgent重定向跳转到相应的页面

[title]准备工作[/title]

  • 一个服务器
  • 用在线工具将二维码解码成网址

[title]代码[/title]

使用时只需将location:后面的???替换成你的二维码解码出来的网址即可

<?php
$ua = $_SERVER['HTTP_USER_AGENT'];
if (preg_match("/QQ\//i", $ua)) {
    //QQ扫描二维码
    header("location:???");
} elseif (preg_match("/weibo/i", $ua)) {
    //微博扫描二维码
    header("location:???");
} elseif (preg_match("/MicroMessenger\//i", $ua)) {
    //微信扫描二维码
    header("location:???");
} else {
    //普通浏览器扫描二维码
    header("location:???");
}

[title]需要注意的问题[/title]

在代码第8行的地址中,如果你填写的是微信名片的url,那么微信扫码显示的结果会是微信安装包。而我这里的地址是微信公众号的历史消息页面,因此没有影响。解决方式:如果用微信扫码显示一个含有微信二维码的页面,然后在这个页面长按二维码识别。

[title]最后处理[/title]

将php文件保存并放到服务器上,将php文件的url找在线工具转化成二维码

当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »
因本文不是用Markdown格式的编辑器书写的,转换的页面可能不符合MIP标准。