ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

laravel5.8(二十四)生成二维码(qrcode)

2021-06-15 18:00:27  阅读:203  来源: 互联网

标签:QR width filename qrcode 二维码 qr laravel5.8 logo


PHP生成二维码,我这里使用phpqrcode类库。

官网:http://phpqrcode.sourceforge.net/

去官网直接下载就好,只是这个类库的版本有点老,但是足够用了。

关于laravel5.8框架如何引入第三方类库,请移步《laravel5.8(十)引入第三方类库

我这里直接放上我使用的示例:

//二维码内容 
            $value = 'https://xxx.xxx.xxx/xxx/xx_xxx.html?id=' . $article_id;
            //生成二维码图片
            $filename = 'article_qrcode_' . $article_id . '.png';
            //容错级别 
            $errorCorrectionLevel = 'L';
            //生成图片大小 
            $matrixPointSize = 15;
            // 实例化qrcode对象
            $QRcode = new QRcode();
            //生成二维码图片 
            $QRcode::png($value, $filename, $errorCorrectionLevel, $matrixPointSize, 2);
            // 水印图片
            $logo = DOMAIN . 'uploads/articleQrcode/logo.png';
            //已经生成的原始二维码图 
            $QR = $filename;
            $QR = imagecreatefromstring(file_get_contents($QR));
            $logo = imagecreatefromstring(file_get_contents($logo));
            //二维码图片宽度 
            $QR_width = imagesx($QR);
            //二维码图片高度 
            $QR_height = imagesy($QR);
            //logo图片宽度 
            $logo_width = imagesx($logo);
            //logo图片高度 
            $logo_height = imagesy($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
            );
            //输出图片 (此时图片已保存至服务器中)
            imagepng($QR, $filename);
            $setPath = 'uploads/articleQrcode/' . $filename;
            // 将二维码剪切至对应目录
            $shell = "mv -f ./" . $filename . "  ./uploads/articleQrcode/" . $filename;
            exec($shell, $output, $state);

以上大概就是基本的使用示例。

有好的建议,请在下方输入你的评论。

欢迎访问个人博客
https://guanchao.site

欢迎访问小程序:
在这里插入图片描述

标签:QR,width,filename,qrcode,二维码,qr,laravel5.8,logo
来源: https://blog.csdn.net/qq_39708228/article/details/117929772

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有