📱 二维码工具库 QrCode
QrCode 是二维码工具库,基于 endroid/qr-code
的 fork
版本,最低支持 PHP 7.1。
🚀 主要功能
- 二维码生成: 支持多种格式的二维码生成
- 自定义样式: 支持自定义颜色、大小、边距等
- 多种输出: 支持 PNG、SVG、EPS 等多种输出格式
- 错误纠正: 支持不同级别的错误纠正
- Logo 嵌入: 支持在二维码中嵌入 Logo
- 批量生成: 支持批量生成二维码
📋 技术特性
- PHP 版本: 最低支持 PHP 7.1
- 基于库: 基于
endroid/qr-code
的 fork 版本 - 详细文档: 原库文档参考 GitHub
- 轻量级: 轻量级实现,性能优异
⚠️ 安装注意
冲突避免: 安装此库时请确保未安装原库
endroid/qr-code
,否则可能导致冲突。
安装
使用 Composer 安装该库:
composer require zoujingli/qrcode
注意: 安装此库时请确保未安装原库 endroid/qr-code
,否则可能导致冲突。
快速开始
以下为基本配置示例,更多参数请参考官方文档:
use Endroid\QrCode\Builder\Builder;
use Endroid\QrCode\Writer\PngWriter;
use Endroid\QrCode\Encoding\Encoding;
$result = Builder::create()
->writer(new PngWriter())
->writerOptions([])
->data('Custom QR code contents')
->encoding(new Encoding('UTF-8'))
// 可选:设置二维码纠错级别
// ->errorCorrectionLevel(new \Endroid\QrCode\ErrorCorrectionLevel\ErrorCorrectionLevelHigh())
->size(300)
->margin(10)
// 可选:设置块大小的模式
// ->roundBlockSizeMode(new \Endroid\QrCode\RoundBlockSizeMode\RoundBlockSizeModeMargin())
// 可选:设置二维码的 LOGO
// ->logoPath(__DIR__ . '/icon.png')
// 可选:设置二维码标签
// ->labelText('This is the label')
// 若需要显示中文,请加载中文字体文件
// ->labelFont(new \Endroid\QrCode\Label\Font\OpenSans(20))
// ->labelAlignment(new \Endroid\QrCode\Label\Alignment\LabelAlignmentCenter())
->validateResult(false)
->build();
// 输出 Base64 图片
echo $result->getDataUri();
更多功能
有关高级用法和功能的详细信息,请参阅原库的官方文档:https://github.com/endroid/qr-code
提示: 本库在功能上与 endroid/qr-code
基本一致,但进行了部分修改以满足特定需求,请根据实际情况选择合适的库版本。