Thinkphp3.2版本结合phpqrcode生成二维码并提供下载

说明:这篇文章主要为大家详细介绍了Thinkphp3.2.3整合phpqrcode生成带二维码的实现方法并提供图像下载,感兴趣的小伙伴们可以参考一下

缘由:Thinkphp中没有二维码相关的库,因此我们可以通过整合phpqrcode来完成生成二维码的功能。

一、phpqrcode下载地址:http://phpqrcode.sourceforge.net/

放置位置:Thinkphp/Vendor/目录下,如下图

二、写代码

HTML代码

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=2.0, user-scalable=no, width=device-width" name="viewport">
	<title>生成二维码_sl95-申霖个人博客</title>
	<style>
		body{background: #b5b5b5;}
		.box{width: 350px;height: 300px;border: solid 2px #b5b5b5; border-radius: 5px; margin: 0 auto;margin-top: 50px;background-color: #999;}
		h3{color: #FFF;font-size: 24px;text-align: center;}
		span{color: #FFF;display: block;width:300px;padding-left: 45px;line-height: 30px;}
		.input-url{display:block;width: 250px;height: 30px;margin:0 auto;border-radius: 5px;border: solid 1px #FFF;padding-left: 10px;}
		.input-code{width: 50px;height: 30px;float:left;margin-left:70px;border-radius: 5px;border: solid 1px #FFF;padding-left: 10px;}
		img{width: 80px;height: 30px;float: left;margin-left: 20px;}
		.input-submit{display:block;width: 265px;height: 40px;margin:0 auto;margin-top:20px;background-color: #3385ff;color: #FFF; border-radius: 5px;border: solid 1px #b5b5b5;}
		.footer{width:300px;height:30px;margin:0 auto;text-align: center;padding: 3px 3px;color: #ddd;}
		.error{display: none;}
		.img{display: none;width: 350px;height: 300px;border: solid 2px #b5b5b5; border-radius: 5px; margin: 0 auto;margin-top: 50px;background-color: #999;}
		.img img{
			width: 350px;
			height: 350px;
			margin: 0 auto;
			background-color: #999;
		}
	</style>
</head>
<body>
	<div class="box">
		<h3>生成二维码</h3>
		<span>网  址</span>
		<input type="text" name="url" required="" placeholder="请输入网址,例:www.baidu.com" class="input-url">
		<input type="submit" value="提交" class="input-submit">
		<div class="footer">
			<p>? 申霖</p>
		</div>
		<div class="error">
			<button class="input-submit error-pic">生成失败</button>
		</div>
	</div>
	<div class="img">
		<img src="" alt="二维码图片" class="ewm-pic">
		<p align="center">手机长按下载,电脑右键另存为下载</p>
	</div>
	<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>
	<script>
		$(".input-submit").click(function(){
			var url = $(".input-url").val();
			if(!url){
				alert("请先填写网址!");
			}else{
				$.ajax({
					url:"http://www.sl95.cn/index.php/Test/Ewm/index.html",
					type:"get",
					dataType:"json",
					contentType:"application/json",
					async:true,
					data:{"url":url},
					success:function(data){
						if(data.status==1){
							$(".box").css("display","none");
							$(".img").css("display","block");
							var picurl = "http://" + window.location.host + "/" + data.url;
							$(".ewm-pic").attr("src",picurl);
						}else{
							$(".error").css("display","block");
						}
					}
				});
			}
		});
	</script>
</body>
</html>

PHP代码

<?php
/*
Time:2018-01-08 23:10UpdateTime:2018-05-09
User:shenlin
Purpose:二维码
 */
namespace Test\Controller;
use Think\Controller;
class EwmController extends Controller {
	public function index(){
		if(IS_AJAX){
			//接收url
			$url = I(‘get.url‘);
			$UrlInfo = $this->qrcode($url);
			if($UrlInfo){
				$data[‘info‘] = "生成成功";
				$data[‘status‘] = 1;
				$data[‘url‘] = $UrlInfo;
			}else{
				$data[‘info‘] = "生成失败!";
				$data[‘status‘] = 0;
			}
			$this->ajaxReturn($data);
		}else{
			$this->display();
		}
    }
    public function qrcode($url){
        ob_clean();
        Vendor(‘phpqrcode.phpqrcode‘);
        $level = 3;
        $size = 4;
        $errorCorrectionLevel = intval($level) ;//容错级别
        $matrixPointSize = intval($size);//生成图片大小
        //保存位置
        $path = "Public/qrcode/";
        // 生成的文件名
        $fileName = $path.date(‘YmdHis‘,time()).‘.png‘;
        //生成二维码图片
        $object = new \QRcode();
        $object->png($url, $fileName, $errorCorrectionLevel, $matrixPointSize, 2);
        return $fileName;
    }
}

  三、完美结束,如果需要生成带logo的二维码,请参照文章“Thinkphp3.2版本结合phpqrcode生成带logo的二维码并提供下载

原文地址:https://www.cnblogs.com/shenlin/p/9013176.html

时间: 2024-08-24 00:50:13

Thinkphp3.2版本结合phpqrcode生成二维码并提供下载的相关文章

【转载】phpqrcode生成二维码的3种类型步骤

<?php// ==============php phpqrcode 生成二维码======================== // 下载地址:http://sourceforge.net/projects/phpqrcode/files/latest/download // 只需要包含 phpqrcode.php 文件就可以. // 一:直接输出 include "phpqrcode.php"; $value="http://www.top789.cn"

Thinkphp3.2结合phpqrcode生成二维码(含Logo的二维码),附案例

首先,下载phpqrcode,将其解压到项目ThinkPHP\Library\Vendor目录下.Index_index.html(模板可自行配置) <form action="{:U('index/index')}" enctype="multipart/form-data" method = "post"> <b>尺寸大小:</b> <input type="text" name

thinkphp整合系列之phpqrcode生成二维码

php生成二维码其实挺简单的:当然指的是使用qrcode类库: 因此关于是否要写这篇博客:我是犹豫了再三的: 不过最后还是决定写下吧:如果有童鞋急着用:就可以直接引了: 再个也可以作为即将写的文章微信支付生成的二维码做个铺垫: 老规矩:以bjyadmin项目示例:http://git.oschina.net/shuaibai123/thinkphp-bjyadmin 1:首先将/ThinkPHP/Library/Vendor/下的Phpqrcode文件夹拷贝到自己的项目中: 2:/Applica

yii 整合phpqrcode生成二维码附在线演示地址

1,先到官网下载包  http://phpqrcode.sourceforge.net/ 下载官网提供的类库后,只需要使用phpqrcode.php就可以生成二维码了,当然您的PHP环境必须开启支持GD2. phpqrcode.php提供了一个关键的png()方法,其中参数$text表示生成二位的的信息文本:参数$outfile表示是否输出二维码图片 文件,默认否:参数$level表示容错率,也就是有被覆盖的区域还能识别,分别是 L(QR_ECLEVEL_L,7%),M(QR_ECLEVEL_M

phpqrcode 生成二维码

这个项目需要根据信息来自动生成二维码,到网上搜了下,发现php有生成二维码的类库phpqrcode,所以打算就用这个来生成二维码 从官网下载类库源码http://sourceforge.net/projects/phpqrcode/,下面是测试案例: <?php include('phpqrcode.php'); $value='http://www.cnblogs.com/'; $errorCorrectionLevel = 'L'; $matrixPointSize = 10; QRcode

使用phpqrcode生成二维码

使用PHP语言生成二维码,还是挺有难度的,当然调用生成二维码图片的接口(比如:联图网http://www.liantu.com/的接口)除外,如果自己写代码生成,真的无从下手.然而,我们可以使用phpqrcode这个现成的类文件,PHP二维码生成类库,利用它可以轻松生成二维码. 前期准备:1.phpqrcode类文件下载,下载地址:https://sourceforge.net/projects/phpqrcode/2.PHP环境必须开启支持GD2扩展库支持(一般情况下都是开启状态) 方法解读:

THINKPHP 整合phpqrcode 生成二维码 没logo

上次发了个调用Google api的生成二维码,如果服务器无法访问网络就无效了.下面是整合将phpqrcode整合到TP生成二维码就可以解决这个问题了.其实也很简单,使用方法如下:先下载附件解压至ThinkPHP/Extend/Vendor目录,目录不存在自己创建. $qrcode=$_COOKIE['qrcode']; //var_dump( $qrcode1);// exit;vendor("phpqrcode.phpqrcode");$data = 'http://www.hdx

关于在thinkcmf中使用phpqrcode生成二维码

首先:下载二维码的类库   phpqrcode文件 然后将下载好的文件放到/simplewind/Core/Library/Vendor下 public function scerweima(){ $url=www.baidu.com ;//将url地址写好 Vendor('phpqrcode.phpqrcode');//加载类库 $errorCorrectionLevel = 'L'; //容错级别 $i=320; $j = floor($i/37*100)/100 + 0.01; $matr

关于php使用phpqrcode生成二维码的完整源码下载

前两天我发表的“php结合phpqrcode生成带图片LOGO的二维码”,有些新手朋友说不知道如何生成,问我能不能提供完整的生成实例,当然能,只有有人需要,我就会努力,昨天晚上花了两个小时写了个完整的源码包,里面的代码包括注释什么的都挺全,还包括有phpqrcode.php文件,如果哪位觉得对自己有需要,可以去下载(博客园这里好像不能发附件哦). 实例效果演示:http://www.codesc.net/other/phpqrcode 完整源码下载:http://www.codesc.net/s