溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

thinkphp整合系列之phpqrcode生成二維碼

發(fā)布時(shí)間:2020-07-31 15:23:04 來(lái)源:網(wǎng)絡(luò) 閱讀:359 作者:帥白123 欄目:web開(kāi)發(fā)

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/

thinkphp整合系列之phpqrcode生成二維碼


 本文為白俊遙原創(chuàng)文章,轉(zhuǎn)載無(wú)需和我聯(lián)系,但請(qǐng)注明來(lái)自白俊遙博客http://baijunyao.com                        


向AI問(wèn)一下細(xì)節(jié)

免責(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)容。

AI