一、phpqrcode下载
https://sourceforge.net/projects/phpqrcode/files/
二、使用步骤
1.将下载文件解压在vendor文件中
2.控制器引入
注意:刚开始试过下面这种引入方式发现引入这里会一直会报错误提醒
public function index{
$qRcode = new \QRcode();
//代码块
$qRcode->png($data, false, $level, $size);
}
后来在控制器更换了引用方式
use QRcode;
3.操作
public function index()
{
header("Content-type:image/png");
require "../vendor/phpqrcode/phpqrcode.php";
// 获取下载地址 这里是我需要携带url自定义的获取方法,根据实际情况自行调整
$model = new seting();
$appUrl = $model->getAppUrl();
// 二维码携带的的网址或者是文本内容
$data = $appUrl;
// 二维码容错率
$level = 'L';
// 二维码大小
$size = 4;
// 参数传递
$QR = QRcode::png($data, false, $level, $size);
$imagestring = base64_encode(ob_get_contents());
ob_end_clean();
// 返回
return json('data:image/png;base64,' . $imagestring);
}
注意:在 return 返回给前端时返回的json数据是这样的,
如果后端调试查看的话可以用img标签会返回二维码图片
return "<img src='data:image/png;base64,{$imagestring}' />";
4.参数讲解
在这里调用的方法是在phpqrcode.php中的定义好的png方法
phpqrcode.php
$text —— 二维码所带的内容:下载地址,文本都可以
$outfile —— 二维码是否保存:默认是false 如果要生成文件的话就需要给出保存的路径
$level —— 二维码的容错率:4个参数可选(L-7%、M-15%、Q-25%、H-35%)、二维码被覆盖的区域百分比
$size —— 二维码的大小,参数是整数(手机端一般4就合适)
$margin —— 二维码的空白区域
$saveandprint —— 保存二维码为图片并显示
总结
团结就是力量,分享是温故知新