1、引入 think-qrcode
composer require dh2y/think-qrcode
成功后,vendor 文件夹下面会出现 dh2y文件夹
2, 在项目中引用
$code = new \dh2y\qrcode\QRcode();
3,生成普通二维码
// $content 需要生成的二维码内容
// $src 保存的地址.png结尾 (绝对路径)
// $size 需要生成二维码的大小 12
function createQrcode($content,$src,$size){
$qrcode=new \dh2y\qrcode\QRcode();
$qrcode->png($content,$src,$size,' L');
if(file_exists($src)){
return '二维码生成成功';
}else{
return '二维码生成失败;
}
}
4,批量生成普通二维码遇到的问题及解决办法
问题描述:Constant QR_MODE_NUL already defined --> 已定义常量 QR_MODE_NUL
出现这个问题的主要原因是因为,把new写到了for循环里面了
怎么解决这个问题
//在foreach外面new出QRcode
$qrcode=new \dh2y\qrcode\QRcode();
foreach($data as $val){
createQrcode($content,$src,$size,$qrcode);
}
function createQrcode($content,$src,$size,$qrcode=''){
if($qrcode==''){
$qrcode=new \dh2y\qrcode\QRcode();
}
$qrcode=new \dh2y\qrcode\QRcode();
$qrcode->png($content,$src,$size,' L');
if(file_exists($src)){
return '二维码生成成功';
}else{
return '二维码生成失败;
}
}
https://packagist.org/packages/dh2y/think-qrcode