估計 tp3 時代大家都是用 phpqrcode,
不過 phpqrcode 很多年沒有更新了,
而且也不符合現在的 psr 標准,
與 tp5 的集成存在一定的問題。
現在推薦大家使用 endroid/qrcode,
github地址:https://github.com/endroid/QrCode
使用方法:
1,安裝endroid/qrcode:
- #composer require endroid/qrcode
復制代碼
2,在控制器里面增加顯示的方法,
例如:\app\index\controller\Qrcode 里面增加 view 方法:
- public function view()
- {
- //生成當前的二維碼
- $qrCode = new \Endroid\QrCode\QrCode();
-
- if($id) {
- //想顯示在二維碼中的文字內容,這里設置了一個查看文章的地址
- $url = url('index/article/read/'.$id,'',true,true);
- $qrCode->setText($url)
- ->setSize(300)
- ->setPadding(10)
- ->setErrorCorrection('high')
- ->setForegroundColor(array('r' => 0, 'g' => 0, 'b' => 0, 'a' => 0))
- ->setBackgroundColor(array('r' => 255, 'g' => 255, 'b' => 255, 'a' => 0))
- ->setLabel('thinkphp.cn')
- ->setLabelFontSize(16)
- ->setImageType(\Endroid\QrCode\QrCode::IMAGE_TYPE_PNG);
- $qrCode->render();
- }
- }
復制代碼
3,在模板文件中引用這個方法:
- <img src="{:url('index/qrcode/view')}">
復制代碼
搞定!