peal / qrcode-generator
在 Laravel 中生成 QR 码
dev-master
2024-05-01 07:14 UTC
Requires
- laravel/framework: 5.2.*|5.6.*|5.7.*|5.8.*|6.*|7.*|8.*|9.*|10.*|11.*
This package is auto-updated.
Last update: 2024-10-01 00:12:42 UTC
README
QR 码(快速响应码)是一种 2D 条形码,用于通过智能手机轻松访问信息。在这个过程中,称为移动标记,手机用户将手机对准 QR 码并打开条形码读取器应用程序,该应用程序与手机摄像头协同工作。
安装
在您的项目根目录下,打开您的终端
composer require peal/qrcode-generator
Composer 将自动下载所有依赖。
对于 Laravel
完成安装后,打开配置文件夹中的 app.php,在 providers 数组中粘贴以下行
peal\qrcodegenerator\QrServiceProvider::class,
对于 Facade 支持,在 aliases 数组中粘贴以下行
'QR' => peal\qrcodegenerator\Facades\QR::class,
然后运行此命令
php artisan vendor:publish --provider="peal\qrcodegenerator\QrServiceProvider"
检查 vendor 发布后,您的配置文件夹中是否已创建 qr-config.php。
/* * QR api url * */ return [ 'qrapi' => 'https://chart.googleapis.com/chart?', ];
单张 QR 码使用
//Using Facades try { $qrcontent = QR::qrFactory() ->email("moinuddin7@gmail.com") ->phone("01716187302") ->url("https://moinshareidea.wordpress.com/") ->text("position:","Lead Developer at GrubDealz Inc.") ->QrCode(200); echo '<p class="center"><img src="' . $qrcontent . '" alt="QR Code" /></p>'; } catch(Exception $e) { return $e->getMessage(); } //Using service container try { $qr = App::make('QR'); $qrcontent = $qr->qrFactory() ->email("moinuddin7@gmail.com") ->phone("01716187302") ->text("website:","https://moinshareidea.wordpress.com/") ->text("position:","Lead Developer at GrubDealz Inc.") ->QrCode(200); echo '<p class="center"><img src="' . $qrcontent . '" alt="QR Code" /></p>'; } catch(Exception $e) { return $e->getMessage(); } //Using core PHP try { //Without Laravel, can be usable any php or php framework $qr = new \peal\qrcodegenerator\Server\QrServer(); $qrcontent = $qr->qrFactory() ->email("moinuddin7@gmail.com") ->phone("01716187302") ->text("website:","https://moinshareidea.wordpress.com/") ->text("position:","Lead Developer at GrubDealz Inc.") ->QrCode(200); echo '<p class="center"><img src="' . $qrcontent . '" alt="QR Code" /></p>'; } catch(Exception $e) { return $e->getMessage(); }
使用 Facades 的多个 QR 码
//in your controller contruct method
$qr = App::make('QR');
try {
$qrcodes = [
[
'email' => 'moinuddin7@gmail.com',
'phone' => '01716187302',
'url' => 'https://moinshareidea.wordpress.com/',
'position' => 'Lead Developer at GrubDealz Inc.',
],
[
'email' => 'moinuddinbca7@gmail.com',
'phone' => '01716187332',
'url' => 'https://moinshareidea.wordpress.com/',
'position' => 'Software engineer at GrubDealz Inc.',
],
[
'email' => 'arifinbca@gmail.com',
'phone' => '01716187392',
'url' => 'https://moinshareidea.wordpress.com/',
'position' => 'Business development officer at BCA Bangladesh.',
],
];
foreach($qrcodes as $qrcode) {
$qrcontent = $qr->qrFactory()
->email($qrcode['email'])
->phone($qrcode['phone'])
->url($qrcode['url'])
->text('',$qrcode['position'])
->QrCode(200);
echo '<p class="center"><img src="' . $qrcontent . '" alt="QR Code" /></p>';
}
} catch(Exception $e) {
return $e->getMessage();
}
使用核心 PHP 的多个 QR 码
use peal\qrcodegenerator\Server\QrServer; $qr = new QrServer(); try { $qrcodes = [ [ 'email' => 'moinuddin7@gmail.com', 'phone' => '01716187302', 'url' => 'https://moinshareidea.wordpress.com/', 'position' => 'Lead Developer at GrubDealz Inc.', ], [ 'email' => 'moinuddinbca7@gmail.com', 'phone' => '01716187332', 'url' => 'https://moinshareidea.wordpress.com/', 'position' => 'Software engineer at GrubDealz Inc.', ], [ 'email' => 'arifinbca@gmail.com', 'phone' => '01716187392', 'url' => 'https://moinshareidea.wordpress.com/', 'position' => 'Business development officer at BCA Bangladesh.', ], ]; foreach($qrcodes as $qrcode) { $qrcontent = $qr->qrFactory() ->email($qrcode['email']) ->phone($qrcode['phone']) ->url($qrcode['url']) ->text('',$qrcode['position']) ->QrCode(200); echo '<p class="center"><img src="' . $qrcontent . '" alt="QR Code" /></p>'; } } catch(Exception $e) { return $e->getMessage(); }
使用 Facades 的多个 QR 码
use peal\qrcodegenerator\Facades\QR; try { $qrcodes = [ [ 'email' => 'moinuddin7@gmail.com', 'phone' => '01716187302', 'url' => 'https://moinshareidea.wordpress.com/', 'position' => 'Lead Developer at GrubDealz Inc.', ], [ 'email' => 'moinuddinbca7@gmail.com', 'phone' => '01716187332', 'url' => 'https://moinshareidea.wordpress.com/', 'position' => 'Software engineer at GrubDealz Inc.', ], [ 'email' => 'arifinbca@gmail.com', 'phone' => '01716187392', 'url' => 'https://moinshareidea.wordpress.com/', 'position' => 'Business development officer at BCA Bangladesh.', ], ]; foreach($qrcodes as $qrcode) { $qrcontent = QR::qrFactory() ->email($qrcode['email']) ->phone($qrcode['phone']) ->url($qrcode['url']) ->text('',$qrcode['position']) ->QrCode(200); echo '<p class="center"><img src="' . $qrcontent . '" alt="QR Code" /></p>'; } } catch(Exception $e) { return $e->getMessage(); }