PHP基于phpqrcode類庫(kù)生成二維碼過程解析
phpqrcode類庫(kù)官網(wǎng)下載地址: https://sourceforge.net/projects/phpqrcode/
1.我們先看看php是怎么生成二維碼的
1.首先我們先下載一下 phpqrcode 類庫(kù)。
2.下載完后解壓我們會(huì)發(fā)現(xiàn) phpqrcode文件夾 里面有一堆的文件,但是我們只需要找到 phpqrcode.php文件復(fù)制, 跟 index.php 文件放在一起即可,而 index.php 就是你生成二維碼的php代碼。
3.接下來就是代碼環(huán)節(jié)了,復(fù)制以下代碼黏貼到php文件里保存執(zhí)行,你就會(huì)發(fā)現(xiàn),在index.php文件里面會(huì)多出一個(gè)文件夾,點(diǎn)開你就會(huì)發(fā)現(xiàn)里面就是你想要的二維碼。
<?php
//生成二維碼
function userimg(){
//引入phpqrcode類庫(kù)文件
require_once 'phpqrcode.php';
$value = 'https://www.cnblogs.com/junyi-bk/'; //二維碼內(nèi)容
$errorCorrectionLevel = 'L'; //容錯(cuò)級(jí)別
$matrixPointSize = 5; //生成圖片大小
// 判斷是否有這個(gè)文件夾 沒有的話就創(chuàng)建一個(gè)
if(!is_dir("qrcode")){
// 創(chuàng)建文件加
mkdir("qrcode");
}
//設(shè)置二維碼圖片名稱,以及存放的路徑
$filename = 'qrcode/'.time().rand(10000,9999999).'.png';
//使用類庫(kù)生成二維碼
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 類庫(kù),還是一樣,需要用到phpqrcode類庫(kù)。
2.取出 phpqrcode.php,然后放到 vendor文件夾里面(vendor的作用就是用來放第三方類庫(kù))
3.準(zhǔn)備工作都做好了,接下來就是代碼環(huán)節(jié)了,只需要在控制器里面寫入并調(diào)用以下方法,即可看到你要的二維碼了
//二維碼
public function UserImg(){
vendor('phpqrcode');//引入類庫(kù)
$value = 'https://www.cnblogs.com/junyi-bk/'; //二維碼內(nèi)容
$errorCorrectionLevel = 'L'; //容錯(cuò)級(jí)別
$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; }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- PHP基于自定義函數(shù)實(shí)現(xiàn)的漢字轉(zhuǎn)拼音功能實(shí)例
- PHP基于ICU擴(kuò)展intl快速實(shí)現(xiàn)漢字轉(zhuǎn)拼音及按拼音首字母分組排序的方法
- 支持生僻字且自動(dòng)識(shí)別utf-8編碼的php漢字轉(zhuǎn)拼音類
- php漢字轉(zhuǎn)拼音的示例
- PHP實(shí)現(xiàn)的無限分類類庫(kù)定義與用法示例【基于thinkPHP】
- php實(shí)現(xiàn)生成PDF文件的方法示例【基于FPDF類庫(kù)】
- thinkPHP簡(jiǎn)單調(diào)用函數(shù)與類庫(kù)的方法
- PHP實(shí)現(xiàn)漢字轉(zhuǎn)拼音類庫(kù)的使用方法
相關(guān)文章
Pytorch中實(shí)現(xiàn)CPU和GPU之間的切換的兩種方法
本文主要介紹了Pytorch中實(shí)現(xiàn)CPU和GPU之間的切換的兩種方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01
Python的lambda匿名函數(shù)的簡(jiǎn)單介紹
Python的lambda匿名函數(shù)的簡(jiǎn)單介紹,需要的朋友可以參考一下2013-04-04
Python實(shí)現(xiàn)DDos攻擊實(shí)例詳解
這篇文章主要給大家介紹了關(guān)于Python實(shí)現(xiàn)DDos攻擊的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-02-02
Python使用moviepy讀取字幕srt文件報(bào)錯(cuò)的解決方法詳解
這篇文章主要為大家詳細(xì)介紹了Python使用moviepy讀取字幕srt文件報(bào)錯(cuò)‘gbk‘?codec?can‘t?decode的兩種解決辦法,有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-01-01

