热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【Thinkphp】生成二维码

1、首先要先下载phpqrcode.php文件下载地址http:pan.baidu.coms1o8Ln1lo2、然后在Controller里面调用该文件**功能:生成

1、首先要先下载phpqrcode.php文件   下载地址http://pan.baidu.com/s/1o8Ln1lo

 

2、然后在Controller里面调用该文件

/** 功能:生成二维码* @param string $qr_data 手机扫描后要跳转的网址* @param string $qr_level 默认纠错比例 分为L、M、Q、H四个等级,H代表最高纠错能力* @param string $qr_size 二维码图大小,1-10可选,数字越大图片尺寸越大* @param string $save_path 图片存储路径* @param string $save_prefix 图片名称前缀*/function createQRcode($save_path,$qr_data,$qr_level='L',$qr_size=5,$save_prefix='qrcode'){include 'phpqrcode.php';$qr=new \QRcode();if(!isset($save_path)) return '';//设置生成png图片的路径$PNG_TEMP_DIR = & $save_path;//导入二维码核心程序//检测并创建生成文件夹if (!file_exists($PNG_TEMP_DIR)){mkdir($PNG_TEMP_DIR);}$filename = $PNG_TEMP_DIR.'test.png';$errorCorrectionLevel = 'L';if (isset($qr_level) && in_array($qr_level, array('L','M','Q','H'))){$errorCorrectionLevel = & $qr_level;}$matrixPointSize = 4;if (isset($qr_size)){$matrixPointSize = & min(max((int)$qr_size, 1), 10);}if (isset($qr_data)) {if (trim($qr_data) == ''){die('data cannot be empty!');}//生成文件名 文件路径+图片名字前缀+md5(名称)+.png$filename = $PNG_TEMP_DIR.$save_prefix.md5($qr_data.'|'.$errorCorrectionLevel.'|'.$matrixPointSize).'.png';//开始生成$qr::png($qr_data, $filename, $errorCorrectionLevel, $matrixPointSize, 2);} else {//默认生成$qr::png('PHP QR Code :)', $filename, $errorCorrectionLevel, $matrixPointSize, 2);}if(file_exists($PNG_TEMP_DIR.basename($filename)))return basename($filename);elsereturn FALSE;}

 

 

3、然后再调用该方法

 

public function qrcode(){$save_path = isset($_GET['save_path'])?$_GET['save_path']:'./Public/qrcode/'; //图片存储的绝对路径$web_path = isset($_GET['save_path'])?$_GET['web_path']:'/Public/qrcode/'; //图片在网页上显示的路径$qr_data = isset($_GET['qr_data'])?$_GET['qr_data']:'http://www.baidu.com/'; //二维码内容$qr_level = isset($_GET['qr_level'])?$_GET['qr_level']:'H';$qr_size = isset($_GET['qr_size'])?$_GET['qr_size']:'10';$save_prefix = isset($_GET['save_prefix'])?$_GET['save_prefix']:'ZETA';if($filename = $this->createQRcode($save_path,$qr_data,$qr_level,$qr_size,$save_prefix)){$pic = $web_path.$filename;}echo "$pic."'>";}

 

 

4、最后生成二维码了

 

转:https://www.cnblogs.com/BobCoder/p/7008809.html



推荐阅读
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • PHP图片截取方法及应用实例
    本文介绍了使用PHP动态切割JPEG图片的方法,并提供了应用实例,包括截取视频图、提取文章内容中的图片地址、裁切图片等问题。详细介绍了相关的PHP函数和参数的使用,以及图片切割的具体步骤。同时,还提供了一些注意事项和优化建议。通过本文的学习,读者可以掌握PHP图片截取的技巧,实现自己的需求。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • Webpack5内置处理图片资源的配置方法
    本文介绍了在Webpack5中处理图片资源的配置方法。在Webpack4中,我们需要使用file-loader和url-loader来处理图片资源,但是在Webpack5中,这两个Loader的功能已经被内置到Webpack中,我们只需要简单配置即可实现图片资源的处理。本文还介绍了一些常用的配置方法,如匹配不同类型的图片文件、设置输出路径等。通过本文的学习,读者可以快速掌握Webpack5处理图片资源的方法。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • Html5-Canvas实现简易的抽奖转盘效果
    本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
  • 数字账号安全与数据资产问题的研究及解决方案
    本文研究了数字账号安全与数据资产问题,并提出了解决方案。近期,大量QQ账号被盗事件引起了广泛关注。欺诈者对数字账号的价值认识超过了账号主人,因此他们不断攻击和盗用账号。然而,平台和账号主人对账号安全问题的态度不正确,只有用户自身意识到问题的严重性并采取行动,才能推动平台优先解决这些问题。本文旨在提醒用户关注账号安全,并呼吁平台承担起更多的责任。令牌云团队对此进行了长期深入的研究,并提出了相应的解决方案。 ... [详细]
  • 小程序自动授权和手动接入的方式及操作步骤
    本文介绍了小程序支持的两种接入方式:自动授权和手动接入,并详细说明了它们的操作步骤。同时还介绍了如何在两种方式之间切换,以及手动接入后如何下载代码包和提交审核。 ... [详细]
  • mui框架offcanvas侧滑超出部分隐藏无法滚动如何解决
    web前端|js教程off-canvas,部分,超出web前端-js教程mui框架中off-canvas侧滑的一个缺点就是无法出现滚动条,因为它主要用途是设置类似于qq界面的那种格 ... [详细]
  • 像跟踪分布式服务调用那样跟踪Go函数调用链 | Gopher Daily (2020.12.07) ʕ◔ϖ◔ʔ
    每日一谚:“Acacheisjustamemoryleakyouhaven’tmetyet.”—Mr.RogersGo技术专栏“改善Go语⾔编程质量的50个有效实践” ... [详细]
author-avatar
li-yuefang_883
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有