PHP基于phpqrcode类库生成二维码过程解析


Posted in Python onMay 28, 2020

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; }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python操作串口的方法
Jun 17 Python
Python编程实现二叉树及七种遍历方法详解
Jun 02 Python
详解Django之admin组件的使用和源码剖析
May 04 Python
python 定义给定初值或长度的list方法
Jun 23 Python
Python中psutil的介绍与用法
May 02 Python
Python 根据日志级别打印不同颜色的日志的方法示例
Aug 08 Python
python判断无向图环是否存在的示例
Nov 22 Python
python DataFrame转dict字典过程详解
Dec 26 Python
python 两个一样的字符串用==结果为false问题的解决
Mar 12 Python
哪种Python框架适合你?简单介绍几种主流Python框架
Aug 04 Python
Pycharm新手使用教程(图文详解)
Sep 17 Python
用Python简陋模拟n阶魔方
Apr 17 Python
Python函数参数分类原理详解
May 28 #Python
pygame用blit()实现动画效果的示例代码
May 28 #Python
PyCharm中如何直接使用Anaconda已安装的库
May 28 #Python
Python内置异常类型全面汇总
May 28 #Python
python不到50行代码完成了多张excel合并的实现示例
May 28 #Python
python使用openpyxl操作excel的方法步骤
May 28 #Python
基于python实现破解滑动验证码过程解析
May 28 #Python
You might like
解析PHP计算页面执行时间的实现代码
2013/06/18 PHP
PHP判断数据库中的记录是否存在的方法
2014/11/14 PHP
PHP浮点比较大小的方法
2016/02/14 PHP
PHP实现多图上传(结合uploadify插件)思路分析
2016/11/30 PHP
php获取字符串前几位的实例(substr返回字符串的子串用法)
2017/03/08 PHP
juqery 学习之六 CSS--css、位置、宽高
2011/02/11 Javascript
javascript针对DOM的应用分析(四)
2012/04/15 Javascript
AngularJS ng-bind-template 指令详解
2016/07/30 Javascript
自己封装的一个原生JS拖动方法(推荐)
2016/11/22 Javascript
微信小程序开发入门基础教程
2017/04/19 Javascript
用vue快速开发app的脚手架工具
2018/06/11 Javascript
详解使用VUE搭建后台管理系统(vue-cli更新至3.0)
2018/08/22 Javascript
vuejs 动态添加input框的实例讲解
2018/08/24 Javascript
Javascript表单序列化原理及实现代码详解
2020/10/30 Javascript
基于vuex实现购物车功能
2021/01/10 Vue.js
[05:29]2014DOTA2国际邀请赛 赛后专访:LGDNewbee顺利过关
2014/07/13 DOTA
Python备份Mysql脚本
2008/08/11 Python
儿童编程python入门
2018/05/08 Python
使用tensorflow实现线性回归
2018/09/08 Python
python 拼接文件路径的方法
2018/10/23 Python
Python获取航线信息并且制作成图的讲解
2019/01/03 Python
python交易记录链的实现过程详解
2019/07/03 Python
Tensorflow tf.nn.depthwise_conv2d如何实现深度卷积的
2020/04/20 Python
巴西本土电商平台:Americanas
2020/06/21 全球购物
分布式数据库需要考虑哪些问题
2013/12/08 面试题
资深财务管理人员自我评价
2013/09/22 职场文书
竞聘上岗演讲稿范文
2014/01/10 职场文书
事业单位公务员的职业生涯规划
2014/01/15 职场文书
大学学生会辞职信
2015/05/13 职场文书
关于艺术节的开幕致辞
2016/03/04 职场文书
Ajax是什么?Ajax高级用法之Axios技术
2021/04/21 Javascript
python控制台打印log输出重复的解决方法
2021/05/14 Python
MySQL实战记录之如何快速定位慢SQL
2022/03/23 MySQL
Android自定义ScrollView实现阻尼回弹
2022/04/01 Java/Android
什么是Python装饰器?如何定义和使用?
2022/04/11 Python
Win11 KB5015814遇安装失败 影响开始菜单性能解决方法
2022/07/15 数码科技