Laravel 10 使用 simplesoftwareio/simple-qrcode 生成二维码
hi,我是温新
Simple QrCode 是基于Bacon/BaconQrCode 开发,适用于Laravel框架的软件包. 我们的目的是让二维码能更加便捷的使用在Laravel框架的项目里.
本篇文章将学习它的基础的使用。
第一步:安装 simplesoftwareio/simple-qrcod 包
composer require simplesoftwareio/simple-qrcode
安装完包后,就可以开始生成QR码了。
关于它更多的用法,可以参考文档:https://www.simplesoftware.io/#/docs/simple-qrcode/zh-cn
第二步:编写生成二维码代码
1、创建控制器
php artisan make:controller LaravelPackage/QrCodeGeneratorController
2、编写代码
<?php
namespace App\Http\Controllers\LaravelPackage;
use App\Http\Controllers\Controller;
use SimpleSoftwareIO\QrCode\Facades\QrCode;
class QrCodeGeneratorController extends Controller
{
public function createQrCode()
{
$qrCodes = [];
// 基础二维码
$qrCodes['simple'] = QrCode::size(120)->generate('https://www.ziruchu.com/');
// 设置二维码颜色
$qrCodes['changeColor'] = QrCode::size(120)->color(255, 0, 0)->generate('https://www.ziruchu.com/');
// 设置二维码背景色
$qrCodes['changeBgColor'] = QrCode::size(120)->backgroundColor(255, 0, 0)->generate('https://www.ziruchu.com/');
// 设置二维码类型
$qrCodes['styleDot'] = QrCode::size(120)->style('dot')->generate('https://www.ziruchu.com/');
$qrCodes['styleSquare'] = QrCode::size(120)->style('square')->generate('https://www.ziruchu.com/');
$qrCodes['styleRound'] = QrCode::size(120)->style('round')->generate('https://www.ziruchu.com/');
return view('laravel-packages.qr-code-generator', $qrCodes);
}
}
3、编写视图代码
// resources\views\laravel-packages\qr-code-generator.blade.php
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Qr Code</title>
<link href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/5.3.1/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<div class="container text-center">
<div class="row">
<div class="col">
<p class="mb-0">Simple</p>
{!! $simple !!}
</div>
<div class="col">
<p class="mb-0">Color Change</p>
{!! $changeColor !!}
</div>
<div class="col">
<p class="mb-0">Background Color Change </p>
{!! $changeBgColor !!}
</div>
</div>
<div class="row mt-5">
<div class="col">
<p class="mb-0">Style Square</p>
{!! $styleSquare !!}
</div>
<div class="col">
<p class="mb-0">Style Dot</p>
{!! $styleDot !!}
</div>
<div class="col">
<p class="mb-0">Style Round</p>
{!! $styleRound !!}
</div>
</div>
</div>
</body>
</html>
第三步:定义路由
// routes/web.php
Route::get('qr-code', [\App\Http\Controllers\LaravelPackage\QrCodeGeneratorController::class, 'createQrCode']);
最后,在浏览器中访问该地址查看下结果吧。
请登录后再评论