Tp框架如何生成二维码
thinkphp6
下面由thinkphp框架教程栏目给大家介绍Tp框架生成二维码的方法,希望对需要的朋友有所帮助!
(一) 安装qr-code扩展
composer require endroid/qr-code
登录后复制
(二)代码实现(代码亲测有效)
<?php namespace app\common\service; use Jrk\Random; use Endroid\QrCode\QrCode; use think\Exception; class QrcodeSrvice { /** * @param $text * @param int $size * @param bool $domain * @return string * @author: Hhy <jackhhy520@qq.com> * @describe:生成普通二维码 */ public static function make_qrcode($text,$size=105,$domain=false){ $img_name = Random::alnum(15); $n = date("Ym"); $dir= app()->getRootPath()."public/qrcode/code/".$n; //判断目录是否存在 if (!is_dir($dir)) { mkdir($dir, 0777, true); } $pathname = $dir."/" . $img_name . '.png'; $qrCode = new QrCode(); $qrCode->setText($text) ->setSize($size) ->setPadding(15) ->setErrorCorrection('high') ->setForegroundColor(array('r' => 0, 'g' => 0, 'b' => 0, 'a' => 0)) ->setBackgroundColor(array('r' => 255, 'g' => 255, 'b' => 255, 'a' => 0)) ->setImageType(QrCode::IMAGE_TYPE_PNG); try { $qrCode->save($pathname); $str="/qrcode/code/".$n."/". $img_name . '.png'; if ($domain){ return request()->domain().$str; }else{ return $str; } } catch (\Endroid\QrCode\Exceptions\ImageTypeInvalidException $exception) { return ""; } } /** * @param $text * @param $logo * @return string * @throws Exception * @author: Hhy <jackhhy520@qq.com> * @describe:生成带logo 的二维码 */ public static function QrCodeWithLogo($text,$logo,$domain=false){ if (!file_exists($logo)){ exception("logo地址不存在"); } $img_name = Random::alnum(15); $n = date("Ym"); $dir= app()->getRootPath()."public/qrcode/".$n; //判断目录是否存在 if (!is_dir($dir)) { mkdir($dir, 0777, true); } $pathname = $dir."/" . $img_name . '.png'; $qrCode = new QrCode(); $qrCode->setText($text) ->setSize(300) ->setLogo($logo) ->setLogoSize(60) ->setErrorCorrection('high') ->setForegroundColor(array('r' => 0, 'g' => 0, 'b' => 0, 'a' => 0)) ->setBackgroundColor(array('r' => 255, 'g' => 255, 'b' => 255, 'a' => 0)) ->setImageType(QrCode::IMAGE_TYPE_PNG); $qrCode->save($pathname); $str="/qrcode/".$n."/". $img_name . '.png'; if ($domain){ return request()->domain().$str; }else{ return $str; } } }
登录后复制
以上是Tp框架如何生成二维码的详细内容。更多信息请关注PHP中文网其他相关文章!
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前
By 尊渡假赌尊渡假赌尊渡假赌
刺客信条阴影:贝壳谜语解决方案
2 周前
By DDD
R.E.P.O.如果您听不到任何人,如何修复音频
1 个月前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
1 个月前
By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

本文讨论了在无服务器体系结构中使用ThinkPHP的关键注意事项,专注于性能优化,无状态设计和安全性。它突出了诸如成本效率和可扩展性之类的收益,但也应对挑战

ThinkPHP的IOC容器提供了高级功能,例如懒惰加载,上下文绑定和方法注入PHP App中有效依赖性管理的方法。Character计数:159

本文讨论了ThinkPHP的内置测试框架,突出了其关键功能(例如单元和集成测试),以及它如何通过早期的错误检测和改进的代码质量来增强应用程序可靠性。

本文讨论了在ThinkPHP微服务中实施服务发现和负载平衡,重点是设置,最佳实践,集成方法和推荐工具。[159个字符]

本文讨论了处理文件上传和集成在ThinkPhp中的云存储的最佳实践,重点是安全性,效率和可扩展性。

本文概述了使用ThinkPhp和RabbitMQ构建分布式任务队列系统,重点是安装,配置,任务管理和可扩展性。关键问题包括确保高可用性,避免常见的陷阱,例如不当

本文讨论了使用ThinkPHP来构建实时协作工具,重点关注设置,Websocket集成和安全性最佳实践。
