Thinkphp3.2.3整合phpqrcode生成帶logo的二維碼
Thinkphp中沒有二維碼相關(guān)的庫(kù),因此我們可以通過整合phpqrcode來完成生成二維碼的功能。
下載phpqrcode
下載地址:http://phpqrcode.sourceforge.net/
整合到Thinkphp框架
在“ThinkPHP\Library\Vendor\”下新建目錄phpqrcode,將壓縮包內(nèi)容解壓到該文件夾下。
調(diào)用phpqrcode生成二維碼
在IndexController控制器下添加如下方法:
public function qrcode($url="www.baidu.com",$level=3,$size=4) { Vendor('phpqrcode.phpqrcode'); $errorCorrectionLevel =intval($level) ;//容錯(cuò)級(jí)別 $matrixPointSize = intval($size);//生成圖片大小 //生成二維碼圖片 $object = new \QRcode(); $object->png($url, false, $errorCorrectionLevel, $matrixPointSize, 2); }
訪問:http://127.0.0.1/Index/qrcode即可看到生成的二維碼。
生成帶logo的二維碼
先調(diào)用phpqrcode生成一張二維碼,再使用php的image相關(guān)函數(shù)將logo圖片添加到生成的二維碼圖片上。
include 'phpqrcode.php'; $value = 'http://www.cnblogs.com/txw1958/'; //二維碼內(nèi)容 $errorCorrectionLevel = 'L';//容錯(cuò)級(jí)別 $matrixPointSize = 6;//生成圖片大小 //生成二維碼圖片 QRcode::png($value, 'qrcode.png', $errorCorrectionLevel, $matrixPointSize, 2); $logo = 'logo.png';//準(zhǔn)備好的logo圖片 $QR = 'qrcode.png';//已經(jīng)生成的原始二維碼圖 if ($logo !== FALSE) { $QR = imagecreatefromstring(file_get_contents($QR)); $logo = imagecreatefromstring(file_get_contents($logo)); $QR_width = imagesx($QR);//二維碼圖片寬度 $QR_height = imagesy($QR);//二維碼圖片高度 $logo_width = imagesx($logo);//logo圖片寬度 $logo_height = imagesy($logo);//logo圖片高度 $logo_qr_width = $QR_width / 5; $scale = $logo_width/$logo_qr_width; $logo_qr_height = $logo_height/$scale; $from_width = ($QR_width - $logo_qr_width) / 2; //重新組合圖片并調(diào)整大小 imagecopyresampled($QR, $logo, $from_width, $from_width, 0, 0, $logo_qr_width, $logo_qr_height, $logo_width, $logo_height); } //輸出圖片 imagepng($QR, 'helloweixin.png'); echo '<img src="helloweixin.png">';
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- thinkphp3.2實(shí)現(xiàn)跨控制器調(diào)用其他模塊的方法
- thinkphp3.2.3版本的數(shù)據(jù)庫(kù)增刪改查實(shí)現(xiàn)代碼
- ThinkPHP3.2.2實(shí)現(xiàn)持久登錄(記住我)功能的方法
- thinkPHP3.2簡(jiǎn)單實(shí)現(xiàn)文件上傳的方法
- thinkphp3.2框架中where條件查詢用法總結(jié)
- ThinkPHP3.1之D方法實(shí)例詳解
- ThinkPHP3.2.3框架實(shí)現(xiàn)執(zhí)行原生SQL語(yǔ)句的方法示例
- ThinkPHP3.2.3所有的單字母方法整理總結(jié)
相關(guān)文章
PHP中的自動(dòng)加載操作實(shí)現(xiàn)方法詳解
這篇文章主要介紹了PHP中的自動(dòng)加載操作實(shí)現(xiàn)方法,結(jié)合實(shí)例形式詳細(xì)分析了php自動(dòng)加載的概念、原理、實(shí)現(xiàn)方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-08-08Zend Studio 實(shí)用快捷鍵一覽表(精心整理)
以下是小編精心整理的Zend Studio實(shí)用快捷鍵。很有用哦!需要的朋友可以過來參考下2013-08-08PHP5.0~5.6 各版本兼容性cURL文件上傳功能實(shí)例分析
這篇文章主要介紹了PHP5.0~5.6 各版本兼容性cURL文件上傳功能,結(jié)合實(shí)例形式分析了php各個(gè)常見版本進(jìn)行curl文件上傳操作的相關(guān)實(shí)現(xiàn)技巧與注意事項(xiàng),需要的朋友可以參考下2018-05-05php+iframe 實(shí)現(xiàn)上傳文件功能示例
這篇文章主要介紹了php+iframe 實(shí)現(xiàn)上傳文件功能,結(jié)合實(shí)例形式分析了PHP通過動(dòng)態(tài)的創(chuàng)建iframe實(shí)現(xiàn)上傳文件的具體步驟、實(shí)現(xiàn)方法與操作注意事項(xiàng),需要的朋友可以參考下2020-03-03php對(duì)大文件進(jìn)行讀取操作的實(shí)現(xiàn)代碼
在php中,對(duì)于文件的讀取時(shí),最快捷的方式莫過于使用一些諸如file、file_get_contents之類的函數(shù),簡(jiǎn)簡(jiǎn)單單的幾行代碼就能很漂亮的完成我們所需要的功能。但當(dāng)所操作的文件是一個(gè)比較大的文件時(shí),這些函數(shù)可能就顯的力不從心, 下面將從一個(gè)需求入手來說明對(duì)于讀取大文件時(shí),常用的操作方法2013-01-01詳解PHP執(zhí)行定時(shí)任務(wù)的實(shí)現(xiàn)思路
這篇文章主要介紹了詳解PHP執(zhí)行定時(shí)任務(wù)的幾種實(shí)現(xiàn)思路,PHP的定時(shí)任務(wù)功能必須通過和其他工具結(jié)合才能實(shí)現(xiàn),們就來深入的解析幾種常見的php定時(shí)任務(wù)的思路2015-12-12