频道栏目
首页 > 资讯 > 其他综合 > 正文

保存带参数的二维码插件的步骤教程

18-06-22        来源:[db:作者]  
收藏   我要投稿

1.引入qrcode插件:

这里写图片描述

2.功能页面-生成二维码按钮:

这里写图片描述

3.生成二维码-代码:

这里写图片描述

4.后台代码-通过vendor方法引入:

//下载生成的二维码-引用方法1
public function qrcode1(){
    header("Content-Type: text/html;charset=utf-8"); 
    //引入二维码生成插件
    vendor("phpqrcode.phpqrcode");

    // 生成的二维码所在目录+文件名 
    $path = "./Uploads/QRcode/";//生成的二维码所在目录
       if(!file_exists($path)){   
           mkdir($path, 0700,true);
       }
       $time = time().'.png';//生成的二维码文件名
       $fileName = $path.$time;//1.拼装生成的二维码文件路径

       $data = '20171214';//2.生成二维码的数据(扫码显示该数据)

       $level = 'L';  //3.纠错级别:L、M、Q、H  

       $size = 10;//4.点的大小:1到10,用于手机端4就可以了 

       ob_end_clean();//清空缓冲区
       \QRcode::png($data, $fileName, $level, $size);//生成二维码
       //文件名转码
       $file_name = iconv("utf-8","gb2312",$time);
       $file_path = $_SERVER['DOCUMENT_ROOT'].'/'.$fileName;
       //获取下载文件的大小
       $file_size = filesize($file_path);
       //
       $file_temp = fopen ( $file_path, "r" );
       //返回的文件
       header("Content-type:application/octet-stream");
       //按照字节大小返回
       header("Accept-Ranges:bytes");
       //返回文件大小
       header("Accept-Length:".$file_size);
       //这里客户端的弹出对话框
       header("Content-Disposition:attachment;filename=".$time);

       echo fread ( $file_temp, filesize ( $file_path ) );
       fclose ( $file_temp );
       exit ();
    }

拓展-浏览器显示

ThinkPHP引入二维码类的方式还有一种,就是通过import进行引入,与vendor稍有不同

1.引入qrcode插件

这里写图片描述

2.调用qrcode2方法:

这里写图片描述

3.后台代码-通过import引入:

public function qrcode2(){
    header("content-type:text/html;charset=utf-8");
    import("Vendor.phpqrcode.Phpqrcode");//引入Phpqrcode.class.php
    $path = "./Uploads/QRcode/";//创建路径
    if(!file_exists($path)){   
        mkdir($path, 0700,true);//创建目录
    }
    $time = time().'.png'; //创建文件名
    $fileName = $path.$time;//1.命名生成的二维码文件
    $data = '20171214';//2.生成二维码的数据(扫码显示该数据)
    $level = 'L';  //3.纠错级别:L、M、Q、H  
    $size = 10;//4.点的大小:1到10,用于手机端4就可以了 
    ob_end_clean();//清空缓冲区
    //生成二维码-不保存:在当前浏览器显示
    \QRcode::png($data, false, $level, $size); 
    //文件名转码
    $file_name = iconv("utf-8","gb2312",$time);
    $file_path = $_SERVER['DOCUMENT_ROOT'].'/'.$fileName;
    //获取下载文件的大小
    $file_size = filesize($file_path);

    $file_temp = fopen ( $file_path, "r" );
    //返回的文件
    header("Content-type:application/octet-stream");
    //按照字节大小返回
    header("Accept-Ranges:bytes");

    //返回文件大小
    header("Accept-Length:".$file_size);
    //这里客户端的弹出对话框
    header("Content-Disposition:attachment;filename=".$time);

    echo fread ( $file_temp, filesize ( $file_path ) );
    fclose ( $file_temp );
    exit ();
    }
相关TAG标签
上一篇:nginx配置优化、负载均衡及动静分离知识详解
下一篇:托米历险记 - 编程开发练习题
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站