您好,登錄后才能下訂單哦!
php生成二維碼其實(shí)挺簡(jiǎn)單的;當(dāng)然指的是使用qrcode類庫(kù);
因此關(guān)于是否要寫這篇博客;我是猶豫了再三的;
不過(guò)最后還是決定寫下吧;如果有童鞋急著用;就可以直接引了;
再個(gè)也可以作為即將寫的文章微信支付生成的二維碼做個(gè)鋪墊;
老規(guī)矩;以bjyadmin項(xiàng)目示例:http://git.oschina.net/shuaibai123/thinkphp-bjyadmin
1:首先將/ThinkPHP/Library/Vendor/下的Phpqrcode文件夾拷貝到自己的項(xiàng)目中;
2:/Application/Common/Common/function.php增加如下函數(shù)
/** * 生成二維碼 * @param string $url url連接 * @param integer $size 尺寸 純數(shù)字 */ function qrcode($url,$size=4){ Vendor('Phpqrcode.phpqrcode'); // 如果沒(méi)有http 則添加 if (strpos($url, 'http')===false) { $url='http://'.$url; } QRcode::png($url,false,QR_ECLEVEL_L,$size,2,false,0xFFFFFF,0x000000); }
然后直接調(diào)用qrcode($url,$size)函數(shù);第一個(gè)參數(shù)傳鏈接;第二個(gè)參數(shù)傳大小即可;
3:到這里已經(jīng)可以生成二維碼了;如果想對(duì)二維碼更加個(gè)性化定制的話;
那么下面就來(lái)講解下這堆參數(shù)的作用;
png($text, $outfile = false, $level = QR_ECLEVEL_L, $size = 3, $margin = 4, $saveandprint=false, $back_color = 0xFFFFFF, $fore_color = 0x000000)
第一個(gè)參數(shù)$text;就是上面代碼里的URL網(wǎng)址參數(shù);
第二個(gè)參數(shù)$outfile默認(rèn)為否;不生成文件;只將二維碼圖片返回;否則需要給出存放生成二維碼圖片的路徑;
第三個(gè)參數(shù)$level默認(rèn)為L(zhǎng);這個(gè)參數(shù)可傳遞的值分別是L(QR_ECLEVEL_L,7%)、M(QR_ECLEVEL_M,15%)、Q(QR_ECLEVEL_Q,25%)、H(QR_ECLEVEL_H,30%);這個(gè)參數(shù)控制二維碼容錯(cuò)率;不同的參數(shù)表示二維碼可被覆蓋的區(qū)域百分比。利用二維維碼的容錯(cuò)率;我們可以將頭像放置在生成的二維碼圖片任何區(qū)域;
第四個(gè)參數(shù)$size;控制生成圖片的大??;默認(rèn)為4;
第五個(gè)參數(shù)$margin;控制生成二維碼的空白區(qū)域大??;
第六個(gè)參數(shù)$saveandprint;保存二維碼圖片并顯示出來(lái);$outfile必須傳遞圖片路徑;
第七個(gè)參數(shù)$back_color;背景顏色;
第八個(gè)參數(shù)$fore_color;繪制二維碼的顏色;
note:第七、第八個(gè)參數(shù)需要傳16進(jìn)制是色值;并且要把“#”替換為“0x”
舉個(gè)栗子:
白色:#FFFFFF => 0xFFFFFF
黑色:#000000 => 0x000000
更多用法;可以直接參考源代碼了;http://phpqrcode.sourceforge.net/
本文為白俊遙原創(chuàng)文章,轉(zhuǎn)載無(wú)需和我聯(lián)系,但請(qǐng)注明來(lái)自白俊遙博客http://baijunyao.com
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。