php(tp5) 生成二维码
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))));
//二维码路径 return $filename;
}
//调用生成二维码方法 echo userimg();
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;
}
php(tp5) 生成二维码的更多相关文章
- TP5 生成二维码
首先下载这个类:http://phpqrcode.sourceforge.net/ 把下载的文件放到vendor下面 public function getWchatQrcode($users_id= ...
- 链接生成二维码-PHP
原文:http://www.upwqy.com/details/20.html 链接生成二维码 首先下载phpqrcode phpqrcode.zip 我这里使用的是TP5,把下载好的类库 放入到ex ...
- thinkphp5动态生成二维码实例总结
thinkphp5关于动态生成二维码类库总结: 遇到的最大问题如下:我想大部分人也碰到过,所有觉得有必要总结下: thinkphp5提示找不到Qrcode类,可是自己明明都放置到了,vendor 目录 ...
- PHP qrcode 生成二维码
<?php /* 下载地址 : https://sourceforge.net/projects/phpqrcode/ 这里下载的文件名为 phpqrcode-2010100721_1.1.4 ...
- Javascript生成二维码(QR)
网络上已经有非常多的二维码编码和解码工具和代码,很多都是服务器端的,也就是说需要一台服务器才能提供二维码的生成.本着对服务器性能的考虑,这种小事情都让服务器去做,感觉对不住服务器,尤其是对于大流量的网 ...
- 使用jquery.qrcode生成二维码(转)
jQuery 的 qrcode 插件就可以在浏览器端生成二维码图片. 这个插件的使用非常简单: 1.首先在页面中加入jquery库文件和qrcode插件. <script type=" ...
- iOS 生成二维码
首先先下载生成二维码的支持文件 libqrencode 添加依赖库 CoreGraphics.framework. QuartzCore.framework.AVFoundation.framewor ...
- QR code 扩展生成二维码
include './phpqrcode/phpqrcode.php'; //引入QR库 QRcode::png("leo", 'qrcode.png', 'L', 10); ...
- Python 创建本地服务器环境生成二维码
一. 需求 公司要做一个H5手机端适配页面,因技术问题所以H5是外包的,每次前端给我们源码,我们把源码传到服务器让其他人访问看是否存在bug,这个不是很麻烦吗?有人说,可以让前端在他们的服务器上先托管 ...
随机推荐
- 虚拟环境与local_settings
虚拟环境(virtualenv) 对于同时管理多个不同的项目时,使用虚拟环境是必须的. 虚拟环境就是用来为一个项目新建一个全新的纯净的python运行环境,该环境与系统的python环境相互隔离,且虚 ...
- 使用BeetleX.Tracks对APM关系链埋点
在现今微服务流行的年代相信一定有了解APM,对于APM核心来说是数据来源,一般各自的APM都有对应的组件帮助完成这些工作.如果需要制作自己的APM系统 ,那需要考虑服务程序调用埋点问题:在这里介绍使用 ...
- maven 配置文件 settings.xml pom.xml
maven涉及的配置文件一般有三个:(作用范围依次减小,优先级依次升高) 全局配置(maven安装包中):${M2_HOME}/conf/settings.xml 用户配置(该文件是拷贝全局配置而来的 ...
- 树和堆(julyedu网课整理)
date: 2018-12-05 16:59:15 updated: 2018-12-05 16:59:15 树和堆(julyedu网课整理) 1 定义 1.1 树的定义 它是由n(n>=1)个 ...
- SpringBoot+JPA+SpringSeurity+JWT
目的:使用这个框架主要就是为了解决高并发环境下登陆操作对数据库及服务器的压力,同时能保证安全性: 加载时,SpringSecurity定义拦截器和添加两个Fitler: 登陆时,登陆成功,通过传入的信 ...
- 联赛模拟测试25 C. Repulsed 贪心+树形DP
题目描述 分析 考虑自底向上贪心 \(f[x][k]\) 表示 \(x\) 下面距离为 \(k\) 的需要灭火器的房间数,\(g[x][k]\) 表示 \(x\) 下面距离为 \(k\) 的多余灭火器 ...
- Azure Data Factory(一)入门简介
一,引言 今天分享一个新的Azure 服务-----Azure Data Factory(Azure 数据工厂),怎么理解,参考根据官方解释-----数据工厂解释:大数据需要可以启用协调和操作过程以将 ...
- LuoguP1286 两数之和
题面概括 将n个数两两相加得到n*(n-1)/2个和,给出这些和,求所有原数方案 n<=500 LuoguP1286 题解 此题原题是 n<10, 没啥可做的 先将 \(n*(n-1)/2 ...
- STM32入门系列-使用库函数点亮LED软硬件分析
电路图分析 首先找来单片机的原理图,根据原理图进行相关的设计工作. 例如在上图中相同网络标号表示它们是连接在一起的,因此D1发光二极管阴极是连接在STM32的PC0管脚上,D2指示灯阴极连接在PC1管 ...
- LWJGL3的内存管理,第三篇,剩下的两种策略
LWJGL3的内存管理,第三篇,剩下的两种策略 上一篇讨论的基于 MemoryStack 类的栈上分配方式,是效率最高的,但是有些情况下无法使用.比如需要分配的内存较大,又或许生命周期较长.这时候就可 ...