1. 介绍

PHP QR Code是一个开源的(LGPL)二维码生成库。

官网及下载地址:PHP QR Code

2. 依赖

环境需要开启GD2拓展

3. 使用场景

将内容生成二维码供扫码使用;例如微信支付,将支付信息生成的URL转为二维码,用户用过微信客户端扫码进行支付。

4. 使用PHP QR Code

4.1 官方示例

可以创建生成二维码文件,或者直接将图片展示到浏览器上。

QRcode::png('code data text', 'filename.png'); // 创建文件
QRcode::png('some othertext 1234'); // 创建图片直接展示到浏览器上

4.2 关键方法png()

phpqrcode.php 中的 png() 方法:

public static function png($text, $outfile=false, $level=QR_ECLEVEL_L, $size=3, $margin=4, $saveandprint=false)

参数:

  • param $text 表示生成二位的的信息文本;
  • param $outfile 表示是否输出二维码图片 文件,默认否;
  • param $level 表示容错率,也就是有被覆盖的区域还能识别,默认是QR_ECLEVEL_L;可选参数为 L(QR_ECLEVEL_L,7%),M(QR_ECLEVEL_M,15%),Q(QR_ECLEVEL_Q,25%),H(QR_ECLEVEL_H,30%);
  • param $size 表示生成图片大小,默认是3;
  • param $margin 表示二维码周围边框空白区域间距值;
  • param $saveandprint 表示是否保存二维码并显示。

4.3 简单使用示例

require_once 'phpqrcode/phpqrcode.php';
QRcode::png("https://www.goozp.com");

这里就生成了一张内容是 ”https://www.goozp.com” 的二维码

5. 可能遇到的问题

5.1 生成二维码时失败,显示的是乱码

生成了这样的东西:

可能说在后面输出了东西;解决方法在和面加上exit()

QRcode::png($url);
exit();