美文网首页
laravel5.8(二十四)生成二维码(qrcode)

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

作者: camellias__ | 来源:发表于2021-06-17 13:54 被阅读0次

    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

    相关文章

      网友评论

          本文标题:laravel5.8(二十四)生成二维码(qrcode)

          本文链接:https://www.haomeiwen.com/subject/uxrcyltx.html