首页 > 代码库 > thinkphp5 与 endroid 二维码生成

thinkphp5 与 endroid 二维码生成

估计 tp3 时代大家都是用 phpqrcode,
不过 phpqrcode 很多年没有更新了,
而且也不符合现在的 psr 标准,
与 tp5 的集成存在一定的问题。

现在推荐大家使用 endroid/qrcode,
github地址:https://github.com/endroid/QrCode

使用方法:

1,安装endroid/qrcode:

  1. #composer require endroid/qrcode
复制代码

2,在控制器里面增加显示的方法,
例如:\app\index\controller\Qrcode 里面增加 view 方法:

  1. public function view()
  2.     {
  3.         //生成当前的二维码
  4.         $qrCode = new \Endroid\QrCode\QrCode();

  5.         if($id) {
  6.             //想显示在二维码中的文字内容,这里设置了一个查看文章的地址
  7.             $url = url(‘index/article/read/‘.$id,‘‘,true,true);
  8.             $qrCode->setText($url)
  9.                 ->setSize(300)
  10.                 ->setPadding(10)
  11.                 ->setErrorCorrection(‘high‘)
  12.                 ->setForegroundColor(array(‘r‘ => 0, ‘g‘ => 0, ‘b‘ => 0, ‘a‘ => 0))
  13.                 ->setBackgroundColor(array(‘r‘ => 255, ‘g‘ => 255, ‘b‘ => 255, ‘a‘ => 0))
  14.                 ->setLabel(‘thinkphp.cn‘)
  15.                 ->setLabelFontSize(16)
  16.                 ->setImageType(\Endroid\QrCode\QrCode::IMAGE_TYPE_PNG);
  17.             $qrCode->render();
  18.         }
  19.     }
复制代码

3,在模板文件中引用这个方法:

  1. <img src="{:url(‘index/qrcode/view‘)}">
复制代码

搞定!

thinkphp5 与 endroid 二维码生成