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之私有函数和专有方法
Oct 24 Python
Python for Informatics 第11章之正则表达式(四)
Apr 21 Python
python入门:这篇文章带你直接学会python
Sep 14 Python
python 切换root 执行命令的方法
Jan 19 Python
python+opencv实现车牌定位功能(实例代码)
Dec 24 Python
Python3 xml.etree.ElementTree支持的XPath语法详解
Mar 06 Python
Python批量将图片灰度化的实现代码
Apr 11 Python
Python小白不正确的使用类变量实例
May 29 Python
解决numpy矩阵相减出现的负值自动转正值的问题
Jun 03 Python
python利用os模块编写文件复制功能——copy()函数用法
Jul 13 Python
python之语音识别speech模块
Sep 09 Python
Python3.10的一些新特性原理分析
Sep 15 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 面向对象程序设计(oop)学习笔记(一) - 抽象类、对象接口、instanceof 和契约式编程
2014/06/12 PHP
PHP中FTP相关函数小结
2016/07/15 PHP
php swoft框架实例用法
2020/12/22 PHP
JavaScript 特殊字符
2007/04/05 Javascript
JavaScript的模块化:封装(闭包),继承(原型) 介绍
2013/07/22 Javascript
基于JQuery实现滚动到页面底端时自动加载更多信息
2014/01/31 Javascript
JS实现合并两个数组并去除重复项只留一个的方法
2015/12/17 Javascript
微信小程序 网络API Websocket详解
2016/11/09 Javascript
React Native实现进度条弹框的示例代码
2017/07/17 Javascript
centos 上快速搭建ghost博客方法分享
2018/05/23 Javascript
如何封装了一个vue移动端下拉加载下一页数据的组件
2019/01/06 Javascript
vue实现购物车抛物线小球动画效果的方法详解
2019/02/13 Javascript
详解keep-alive + vuex 让缓存的页面灵活起来
2019/04/19 Javascript
JS变量提升及函数提升实例解析
2020/09/03 Javascript
Node.js利用Express实现用户注册登陆功能(推荐)
2020/10/26 Javascript
python实现保存网页到本地示例
2014/03/16 Python
python查看微信好友是否删除自己
2016/12/19 Python
Python 中urls.py:URL dispatcher(路由配置文件)详解
2017/03/24 Python
在Python的一段程序中如何使用多次事件循环详解
2017/09/07 Python
Python 2.x如何设置命令执行的超时时间实例
2017/10/19 Python
python中的随机函数小结
2018/01/27 Python
Python实现求解一元二次方程的方法示例
2018/06/20 Python
python爬取哈尔滨天气信息
2018/07/14 Python
Python提取频域特征知识点浅析
2019/03/04 Python
python的pstuil模块使用方法总结
2019/07/26 Python
pytorch中的上采样以及各种反操作,求逆操作详解
2020/01/03 Python
深入浅析Python代码规范性检测
2020/07/31 Python
详解html5页面 rem 布局适配方法
2018/01/12 HTML / CSS
巴西最大的家电和百货零售商:Casas Bahia
2016/11/22 全球购物
英国日常交易网站:Wowcher
2018/09/04 全球购物
智能家居、吸尘器、滑板车、电动自行车网上购物:Geekmaxi
2021/01/18 全球购物
20年同学聚会感言
2014/02/03 职场文书
股东协议书范本
2014/04/14 职场文书
妇联主席先进事迹
2014/05/18 职场文书
邮政营业员岗位职责
2015/04/14 职场文书
MySQL中TIMESTAMP类型返回日期时间数据中带有T的解决
2022/12/24 MySQL