yii2-wx / 微信二维码接口

鲁展
2023-12-01
熟悉阿北的伙计知道最近我搞了一个专门针对于yii2的微信SDK,已经开源, github,也欢迎大家给我加个星星哈。

目前公众号支持生成两种类型的二维码:

  • 临时二维码 是有过期时间的,最长可以设置为在二维码生成后的30天(即2592000秒)后过期,但能够生成较多数量。临时二维码主要用于帐号绑定等不要求二维码永久保存的业务场景
  • 永久二维码 是无过期时间的,但数量较少(目前为最多10万个)。永久二维码主要用于适用于帐号绑定、用户来源统计等场景。

获得对象

use abei2017\wx\Application;

$config = [];
$app = new Application(['conf'=>$config);
$qrcode = $app->driver("mp.qrcode");

函数

临时二维码和永久二维码

临时整数型二维码

$result = $qrcode->intTemp(3600,9527);// 3600秒过期,内容为9527

临时字符串型二维码

$result = $qrcode->strTemp(3600,"abei2017");// 3600秒过期,内容为abei2017

永久整数型二维码

$result = $qrcode->intForver(9527);

永久字符串型二维码

$result = $qrcode->strForver("abei2017");

返回结果

返回一个一维数组,里面包含ticket、url和expire_seconds(临时二维码中有)。

[
    'ticket' => 'gQH97zwAAAAAAAAAAS5odHRwOi8vd2VpeGluLnFxLmNvbS9xLzAyd2lyTHRKTzc5UVAxeFdEOXhxMVUAAgRqGYlaAwQQDgAA',
    'expire_seconds' => 3600,
    'url' => 'http://weixin.qq.com/q/02wirLtJO79QP1xWD9xq1U'
]
  • ticket 获取的二维码ticket,凭借此ticket可以在有效时间内换取二维码
  • expire_seconds 该二维码有效时间,以秒为单位。 最大不超过2592000(即30天)。
  • url 二维码图片解析后的地址,开发者可根据该地址自行生成需要的二维码图片

获取后可以根据微信接口获取二维码或自己生成内含url的二维码,两种方法均可。

如果你要自己生成二维码,可以看北哥此视频 二维码生成

ticket换取二维码

微信提供了一个开放的接口,我们只需要将ticket作为get参数传递过去就能得到二维码。

https://mp.weixin.qq.com/cgi-...

<img src="https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=<?= $ticket;?>"/>
yii2-wx https://github.com/abei2017/y...
 类似资料: