一、如何在PHP中生成二维码
1.1 二维码效果
1.2 composer 安装 qrcode 库
在你的项目根目录下,运行以下命令
composer require endroid/qr-code
1.3 tp6生成二维码
可以指定二维码跳转地址,logo,参数。以下是 tp6 的例子。
<?php
namespace app\admin\controller;
use Endroid\QrCode\Logo\Logo;
use Endroid\QrCode\QrCode;
use Endroid\QrCode\Writer\PngWriter;
class QRCodeController
{
public function qr_code()
{
$url = 'https://www.baidu.com';//跳转地址
$qrcode = QrCode::create($url);//创建二维码
$qrcode->setSize(300);//二维码大小,以像素为单位
$qrcode->setMargin(10);//周围空白的大小,以像素为单位
$parameters = [//添加参数
'param1' => 'value1',
'param2' => 'value2',
];
$queryString = http_build_query($parameters);
$qrcode->setData($qrcode->getData() . '?' . $queryString);
$writer = new PngWriter();//创建图片生成器
$logo = Logo::create(public_path().'logo.png')->setResizeToWidth(50);//添加logo
$result = $writer->write($qrcode,$logo);
$path = public_path().'qrcode/';//保存到制定目录
!is_dir($path) && mkdir($path,0777,true);
$name = 'qrcode.png';
$file_name = $path.$name;
$result->saveToFile($file_name);
return $file_name;
}
}