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