PHP基于phpqrcode類庫生成二維碼過程解析
phpqrcode類庫官網(wǎng)下載地址: https://sourceforge.net/projects/phpqrcode/
1.我們先看看php是怎么生成二維碼的
1.首先我們先下載一下 phpqrcode 類庫。
2.下載完后解壓我們會發(fā)現(xiàn) phpqrcode文件夾 里面有一堆的文件,但是我們只需要找到 phpqrcode.php文件復(fù)制, 跟 index.php 文件放在一起即可,而 index.php 就是你生成二維碼的php代碼。
3.接下來就是代碼環(huán)節(jié)了,復(fù)制以下代碼黏貼到php文件里保存執(zhí)行,你就會發(fā)現(xiàn),在index.php文件里面會多出一個(gè)文件夾,點(diǎn)開你就會發(fā)現(xiàn)里面就是你想要的二維碼。
<?php//生成二維碼function userimg(){ //引入phpqrcode類庫文件 require_once ’phpqrcode.php’; $value = ’https://www.cnblogs.com/junyi-bk/’; //二維碼內(nèi)容 $errorCorrectionLevel = ’L’; //容錯(cuò)級別 $matrixPointSize = 5; //生成圖片大小 // 判斷是否有這個(gè)文件夾 沒有的話就創(chuàng)建一個(gè) if(!is_dir('qrcode')){ // 創(chuàng)建文件加 mkdir('qrcode'); } //設(shè)置二維碼圖片名稱,以及存放的路徑 $filename = ’qrcode/’.time().rand(10000,9999999).’.png’; //使用類庫生成二維碼 QRcode::png($value,$filename , $errorCorrectionLevel, $matrixPointSize, 2); //如果需要轉(zhuǎn)換成base64數(shù)據(jù),解開下面這行注釋即可 //$image_data = chunk_split(base64_encode(fread(fopen($filename, ’r’), filesize($filename))));
2.上面就是純php生成二維碼的方法了,那么我們來看看用tp5是怎么生成二維碼的
1.首先我們先下載一下 phpqrcode 類庫,還是一樣,需要用到phpqrcode類庫。
2.取出 phpqrcode.php,然后放到 vendor文件夾里面(vendor的作用就是用來放第三方類庫)
3.準(zhǔn)備工作都做好了,接下來就是代碼環(huán)節(jié)了,只需要在控制器里面寫入并調(diào)用以下方法,即可看到你要的二維碼了
//二維碼 public function UserImg(){ vendor(’phpqrcode’);//引入類庫 $value = ’https://www.cnblogs.com/junyi-bk/’; //二維碼內(nèi)容 $errorCorrectionLevel = ’L’; //容錯(cuò)級別 $matrixPointSize = 5; //生成圖片大小 //生成二維碼圖片 // 判斷是否有這個(gè)文件夾 沒有的話就創(chuàng)建一個(gè) if(!is_dir('qrcode')){ // 創(chuàng)建文件加 mkdir('qrcode'); } //設(shè)置二維碼文件名 $filename = ’qrcode/’.time().rand(10000,9999999).’.png’; //生成二維碼 QRcode::png($value,$filename , $errorCorrectionLevel, $matrixPointSize, 2);//如果需要轉(zhuǎn)換成base64數(shù)據(jù),解開下面這行注釋即可 //$image_data = chunk_split(base64_encode(fread(fopen($filename, ’r’), filesize($filename))));//獲取當(dāng)前域名$request = Request::instance(); $domain = $request->domain(); return$domain.’/’.$filename; }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Django ORM實(shí)現(xiàn)按天獲取數(shù)據(jù)去重求和例子2. Jsp中request的3個(gè)基礎(chǔ)實(shí)踐3. XML入門的常見問題(一)4. jsp EL表達(dá)式詳解5. 解決ajax的delete、put方法接收不到參數(shù)的問題方法6. IntelliJ IDEA 統(tǒng)一設(shè)置編碼為utf-8編碼的實(shí)現(xiàn)7. idea修改背景顏色樣式的方法8. chat.asp聊天程序的編寫方法9. IntelliJ IDEA設(shè)置自動提示功能快捷鍵的方法10. 怎樣才能用js生成xmldom對象,并且在firefox中也實(shí)現(xiàn)xml數(shù)據(jù)島?
