TP5使用二维码PHP QR Code生成带LOGO和不带LOGO的二维码
1.下载二维码插件Phpqrcode,地址 https://sourceforge.net/projects/phpqrcode/files/,把下载的文件夹放到\vendor下
2.在公共函数库添加函数create_qrcode();
function create_qrcode($data,$img)
{
require "../vendor/phpqrcode/phpqrcode.php";
//生成二位码
$outfile="./uploads/imgs/".$img.'.jpg';
$level = 'L';
$size =4;
$QRcode = new \QRcode();
ob_start();
$QRcode->png($data,$outfile,$level,$size,2);
ob_end_clean();
//下方是将生成好的二维码加上logo
// $logo = './uploads/imgs/111.jpg';//准备好的logo图片
// $QR = $outfile;//已经生成的原始二维码图
// if ($logo !== FALSE) {
// $QR = imagecreatefromstring(file_get_contents($QR));
// $logo = imagecreatefromstring(file_get_contents($logo));
// $QR_width = imagesx($QR);//二维码图片宽度
// $QR_height = imagesy($QR);//二维码图片高度
// $logo_width = imagesx($logo);//logo图片宽度
// $logo_height = imagesy($logo);//logo图片高度
// $logo_qr_width = $QR_width / 5;
// $scale = $logo_width/$logo_qr_width;
// $logo_qr_height = $logo_height/$scale;
// $from_width = ($QR_width - $logo_qr_width) / 2;
// //重新组合图片并调整大小
// imagecopyresampled($QR, $logo, $from_width, $from_width, 0, 0, $logo_qr_width,
// $logo_qr_height, $logo_width, $logo_height);
// }
// $outfile="./uploads/imgs/".$img.'.jpg';
// imagepng($QR, "./uploads/imgs/".$img.'.jpg');
return $outfile;
}
3.在控制器里调用create_qrcode();
public function index()
{
$result=$this-> create_qrcode("http://www.lbb.com","222");
$this->assign('result',$result);
}
参数说明:
/*
- png($text, $outfile = false, $level = QR_ECLEVEL_L, $size = 4, $margin = 4, $saveandprint=false, $back_color = 0xFFFFFF, $fore_color = 0x000000)
- 参数说明:
- $text 就是url参数
- $outfile 默认否,不生成文件,只返回二维码图片,否则需要给出保存路径
- $level 二维码容错率,默认L(7%)、M(15%)、Q(25%)、H(30%)
- $size 二维码图片大小,默认4
- $margin 二维码空白区域大小
- s a v e a b d p r i n t 二 维 码 保 存 并 显 示 , saveabdprint 二维码保存并显示, saveabdprint二维码保存并显示,outfile必须传路径
- $back_color 背景颜色
- $fore_color 绘制二维码的颜色
- tip:颜色必须传16进制的色值,并把“#”替换为“0x”; 如 #FFFFFF => 0xFFFFFF
*/
3.二维码生成,调用。如:网站域名/index/index/qrcode,就可以显示二维码了。
————————————————
版权声明:本文为CSDN博主「www0537webcom」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/www0537webcom/article/details/80712150