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
网友评论