亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

thinkphp3.2框架集成QRcode生成二維碼的方法分析

 更新時間:2020年03月11日 10:47:56   作者:懷素真  
這篇文章主要介紹了thinkphp3.2框架集成QRcode生成二維碼的方法,結(jié)合實例形式分析了QRcode的下載、擴展以及thinkphp3.2使用QRcode生成二維碼的相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了thinkphp3.2框架集成QRcode生成二維碼的方法。分享給大家供大家參考,具體如下:

一、下載QRcode源代碼

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

使用phpqrcode必須開啟GD2擴展,phpqrcode提供了一個png()方法,通過該方法,我們可以生成自已需要的二維碼。該函數(shù)定義如下:

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);
}

總共六個參數(shù):

參數(shù)一:表示你要保存的文本數(shù)據(jù)。
參數(shù)二:輸出的二維碼圖片文件。
參數(shù)三:容錯率(分別是L、M、Q、H)
參數(shù)四:生成圖片大小(1-10)
參數(shù)五:二維碼周圍邊框空白區(qū)域間距值
參數(shù)六:是否保存二維碼并顯示

二、把下載好的壓縮包解壓,并名為QRcode,并拷貝到ThinkPHP/Library/Vendor下。然后我們在應(yīng)用程序目錄的Common模塊下Common/function.php創(chuàng)建一個公共方法,用于生成二維碼。

/**
 * 生成二維碼
 * @param type $data 信息數(shù)據(jù)
 * @param type $size 二維碼圖大小,1-10可選,數(shù)字越大圖片尺寸越大
 * @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:這里再為大家推薦兩款二維碼相關(guān)在線工具供大家參考使用:

在線生成二維碼工具(加強版)
http://tools.jb51.net/transcoding/jb51qrcode

在線二維碼解碼識別工具
http://tools.jb51.net/transcoding/trans_qrcode

更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。

希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。

相關(guān)文章

  • Zend Framework教程之Resource Autoloading用法實例

    Zend Framework教程之Resource Autoloading用法實例

    這篇文章主要介紹了Zend Framework教程之Resource Autoloading用法,結(jié)合實例形式分析了Resource Autoloading實現(xiàn)自動加載的原理及具體使用方法,需要的朋友可以參考下
    2016-03-03
  • 使用phpunit進行接口自動化測試

    使用phpunit進行接口自動化測試

    下面小編就為大家分享一篇使用phpunit進行接口自動化測試,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • 基于linnux+phantomjs實現(xiàn)生成圖片格式的網(wǎng)頁快照

    基于linnux+phantomjs實現(xiàn)生成圖片格式的網(wǎng)頁快照

    在代碼區(qū)看到一個生成站點快照的代碼,看了半天才發(fā)現(xiàn),作者僅僅貼出來業(yè)務(wù)代碼,最核心的生成快照圖片的代碼反而沒有給出來。 以前記得google搜索提供站點縮略圖,那時候覺得好神奇,但是沒有花時間去做深入的調(diào)研。昨天又遇到了,那就順便調(diào)研下吧。
    2015-04-04
  • PHP實現(xiàn)用戶認證及管理完全源碼

    PHP實現(xiàn)用戶認證及管理完全源碼

    PHP實現(xiàn)用戶認證及管理完全源碼...
    2007-03-03
  • php使用百度ping服務(wù)代碼實例

    php使用百度ping服務(wù)代碼實例

    這篇文章主要介紹了php使用百度ping服務(wù)代碼實例,百度ping服務(wù)可以加速對自己網(wǎng)站的收錄,一般在文章發(fā)表時調(diào)用,需要的朋友可以參考下
    2014-06-06
  • 詳解PHP中websocket的使用方法

    詳解PHP中websocket的使用方法

    這篇文章主要為大家詳細介紹了PHP中websocket的使用方法,為大家進行了詳細注解,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • PHP+AJAX 投票器功能

    PHP+AJAX 投票器功能

    這篇文章主要介紹了PHP+AJAX 投票器功能,本文通過一個實例代碼給大家介紹的非常詳細,需要的朋友參考下
    2017-11-11
  • CodeIgniter控制器之業(yè)務(wù)邏輯實例分析

    CodeIgniter控制器之業(yè)務(wù)邏輯實例分析

    這篇文章主要介紹了CodeIgniter控制器之業(yè)務(wù)邏輯使用方法,結(jié)合實例形式分析了業(yè)務(wù)邏輯所涉及的相關(guān)概念與具體使用方法,需要的朋友可以參考下
    2016-01-01
  • PHP SplObjectStorage使用實例

    PHP SplObjectStorage使用實例

    這篇文章主要介紹了PHP SplObjectStorage使用實例,SplObjectStorage是SPL標準庫中的數(shù)據(jù)結(jié)構(gòu)對象容器,用來存儲一組對象,特別是當你需要唯一標識對象的時候,需要的朋友可以參考下
    2015-05-05
  • PHP數(shù)組遍歷知識匯總(包含遍歷方法、數(shù)組指針操作函數(shù)、數(shù)組遍歷測速)

    PHP數(shù)組遍歷知識匯總(包含遍歷方法、數(shù)組指針操作函數(shù)、數(shù)組遍歷測速)

    這篇文章主要介紹了PHP數(shù)組遍歷知識匯總,本文包含3種遍歷方法、7個數(shù)組指針操作函數(shù)、對3種數(shù)組遍歷的速度測試等內(nèi)容,需要的朋友可以參考下
    2014-07-07

最新評論