PHP基于phpqrcode类库生成二维码过程解析
作者:xiondun 发布时间:2023-11-17 19:06:35
标签:PHP,phpqrcode,二维码
phpqrcode类库官网下载地址: https://sourceforge.net/projects/phpqrcode/
1.我们先看看php是怎么生成二维码的
1.首先我们先下载一下 phpqrcode 类库。
2.下载完后解压我们会发现 phpqrcode文件夹 里面有一堆的文件,但是我们只需要找到 phpqrcode.php文件复制, 跟 index.php 文件放在一起即可,而 index.php 就是你生成二维码的php代码。
3.接下来就是代码环节了,复制以下代码黏贴到php文件里保存执行,你就会发现,在index.php文件里面会多出一个文件夹,点开你就会发现里面就是你想要的二维码。
<?php
//生成二维码
function userimg(){
//引入phpqrcode类库文件
require_once 'phpqrcode.php';
$value = 'https://www.cnblogs.com/junyi-bk/'; //二维码内容
$errorCorrectionLevel = 'L'; //容错级别
$matrixPointSize = 5; //生成图片大小
// 判断是否有这个文件夹 没有的话就创建一个
if(!is_dir("qrcode")){
// 创建文件加
mkdir("qrcode");
}
//设置二维码图片名称,以及存放的路径
$filename = 'qrcode/'.time().rand(10000,9999999).'.png';
//使用类库生成二维码
QRcode::png($value,$filename , $errorCorrectionLevel, $matrixPointSize, 2);
//如果需要转换成base64数据,解开下面这行注释即可
//$image_data = chunk_split(base64_encode(fread(fopen($filename, 'r'), filesize($filename))));
2.上面就是纯php生成二维码的方法了,那么我们来看看用tp5是怎么生成二维码的
1.首先我们先下载一下 phpqrcode 类库,还是一样,需要用到phpqrcode类库。
2.取出 phpqrcode.php,然后放到 vendor文件夹里面(vendor的作用就是用来放第三方类库)
3.准备工作都做好了,接下来就是代码环节了,只需要在控制器里面写入并调用以下方法,即可看到你要的二维码了
//二维码
public function UserImg(){
vendor('phpqrcode');//引入类库
$value = 'https://www.cnblogs.com/junyi-bk/'; //二维码内容
$errorCorrectionLevel = 'L'; //容错级别
$matrixPointSize = 5; //生成图片大小
//生成二维码图片
// 判断是否有这个文件夹 没有的话就创建一个
if(!is_dir("qrcode")){
// 创建文件加
mkdir("qrcode");
}
//设置二维码文件名
$filename = 'qrcode/'.time().rand(10000,9999999).'.png';
//生成二维码
\QRcode::png($value,$filename , $errorCorrectionLevel, $matrixPointSize, 2);//如果需要转换成base64数据,解开下面这行注释即可//$image_data = chunk_split(base64_encode(fread(fopen($filename, 'r'), filesize($filename))));//获取当前域名$request = Request::instance(); $domain = $request->domain(); return$domain.'/'.$filename; }
来源:https://%cnbcom%/xiondun/p/12511741.html


猜你喜欢
- 异常异常处理…允许错误处理在程序结构的中心或者高层级的地方被清晰有条理的组织起来。Exceptions… allow error handl
- 在线阅读与印刷品阅读有着很大的不同,原因之一是屏幕会导致注意力问题。文字很难成为重点,而闪烁的横幅、明亮的图片又更加会转移对实际的博客内容的
- numpy多维数组的创建多维数组(矩阵ndarray)ndarray的基本属性shape维度的大小ndim维度的个数dtype数据类型1.1
- 以下介绍用数据库实现简单计数器,功能实现统计网站每日访问,每周访问及总访问量的统计,使用js调用下面存为count.asp<%&nbs
- python 换位密码算法的实例详解一前言:换位密码基本原理:先把明文按照固定长度进行分组,然后对每一组的字符进行换位操作,从而
- 简介增量备份是指在一次全备份或上一次增量备份后,以后每次的备份只需备份与前一次相比增加或者被修改的文件。这就意味着,第一次增量备份的对象是进
- 本文主要给大家介绍了关于CentOS 6.5 安装Python 3.5.2并与Python2并存的相关内容,分享出来供大家参考学习,下面来看
- 向量点乘 (dot) 和对应分量相乘 (multiply) :>>> aarray([1, 2, 3])>>&
- smtp指令书接上文邮件实现详解,这里我们及我们简单复习一下smtp的指令如下:telnet smtp.163.com 25[outpout
- 本文实例讲述了Python实现公历(阳历)转农历(阴历)的方法。分享给大家供大家参考,具体如下:两个要点:1、公历转农历用了查表法(第126
- 一 、精灵(Sprite),屏幕上的对象。精灵组是精灵的组合。创建空的精灵组对象:精灵组可以对其中的所有精灵调用它们各自的更新方法(self
- JSONJSON 起源JSON 全称 JavaScript Object Notation 。是处理对象文字语法的 JavaScript 编
- 正文在平时的开发过程中,我们会遇到一些特殊的应用场景,如果你想要在执行某种操作之前或者之后你能够得到通知,并对其进行一些你想要的操作时,你就
- 目录前言1.什么是锁2.InnoDB存储引擎中的锁2.1锁的类型2.2 一致性非锁定读2.3 一致性锁定读3 锁的算法3.1行锁的3中算法总
- 今天在帮前端准备数据的时候,需要把数据格式转成json格式,说实话,涉及到中文有时候真的是很蛋疼,除非对Python的编码规则比较了解,不然
- 当我们需要批量删除数据库中的表时,对于单个删除一些表是否感到烦躁,厌倦,干脆写个脚本用得了。本脚本使用游标循环删除,对于数量比较小,用游标暂
- 本文借鉴于张广河教授主编的《数据结构》,对其中的代码进行了完善。从某源点到其余各顶点的最短路径Dijkstra算法可用于求解图中某源点到其余
- 新建项目时,选择新建虚拟环境项目打开后,启动终端,却经常发现,并没有开启虚拟环境,导致一些包都被安装到全局环境中。一种解决办法是手动开启虚拟
- 本文实例讲述了JS基于开关思想实现的数组去重功能。分享给大家供大家参考,具体如下:场景: 比如给你一个数组var Arr = [ 25, 7
- 一个带有 yield 的函数就是一个 generator,它和普通函数不同,生成一个 generator 看起来像函数调用,但不会执行任何函