• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    thinkphp3.2框架集成QRcode生成二维码的方法分析

    本文实例讲述了thinkphp3.2框架集成QRcode生成二维码的方法。分享给大家供大家参考,具体如下:

    一、下载QRcode源代码

    https://sourceforge.net/projects/phpqrcode/files/releases/

    使用phpqrcode必须开启GD2扩展,phpqrcode提供了一个png()方法,通过该方法,我们可以生成自已需要的二维码。该函数定义如下:

    public static function png(
      $text,
      $outfile = false,
      $level = QR_ECLEVEL_L,
      $size = 3,
      $margin = 4,
      $saveandprint = false
    ) {
      $enc = QRencode::factory($level, $size, $margin);
      return $enc->encodePNG($text, $outfile, $saveandprint=false);
    }
    
    

    总共六个参数:

    参数一:表示你要保存的文本数据。
    参数二:输出的二维码图片文件。
    参数三:容错率(分别是L、M、Q、H)
    参数四:生成图片大小(1-10)
    参数五:二维码周围边框空白区域间距值
    参数六:是否保存二维码并显示

    二、把下载好的压缩包解压,并名为QRcode,并拷贝到ThinkPHP/Library/Vendor下。然后我们在应用程序目录的Common模块下Common/function.php创建一个公共方法,用于生成二维码。

    /**
     * 生成二维码
     * @param type $data 信息数据
     * @param type $size 二维码图大小,1-10可选,数字越大图片尺寸越大
     * @param type $path 图片保存根路径
     * @param type $level 纠错比例,分为L,M,Q,H四个等级,H代表最高纠错能力
     */
    function createQR($data = '', $size = 8, $path = './Qr', $level = 'L') {
      if (empty($data) || empty($size) || empty($path) || empty($level)) {
        return false;
      }
      vendor('QRcode.phpqrcode');
      $size = min(max((int) $size, 1), 10);
      $filePath = $path . '/' . date('Ym');
      if (!file_exists($filePath)) {
        @mkdir($filePath, 0766, true);
      }
      if (!in_array($level, array('L', 'M', 'Q', 'H'))) {
        $level = 'L';
      }
      $fileName = date('YmdHis') . '_' . uniqid() . '.png';
      $file = $filePath . '/' . $fileName;
     
      QRcode::png($data, $file, $level, $size, 2);
     
      if (file_exists($file)) {
        return $file;
      } else {
        return false;
      }
    }
    
    

    PS:这里再为大家推荐两款二维码相关在线工具供大家参考使用:

    在线生成二维码工具(加强版)
    http://tools.jb51.net/transcoding/jb51qrcode

    在线二维码解码识别工具
    http://tools.jb51.net/transcoding/trans_qrcode

    更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

    希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

    您可能感兴趣的文章:
    • php+laravel 扫码二维码签到功能
    • Thinkphp使用Zxing扩展库解析二维码内容图文讲解
    • PHP实现一个二维码同时支持支付宝和微信支付的示例
    • PHP基于phpqrcode类生成二维码的方法示例详解
    • PHP基于phpqrcode类库生成二维码过程解析
    • PHP生成二维码与识别二维码的方法详解【附源码下载】
    • php生成二维码不保存服务器还有下载功能的实现代码
    • PHP二维码的生成与识别案例
    上一篇:PHP终止脚本执行的实例代码
    下一篇:centos7环境下swoole1.9的安装与HttpServer的使用方法分析
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    thinkphp3.2框架集成QRcode生成二维码的方法分析 thinkphp3.2,框架,集成,QRcode,