php生成二維碼的幾種方式整理及使用實(shí)例
1.google開(kāi)放api
$urlToEncode="http://bbs.lewanchina.com";
generateQRfromGoogle($urlToEncode);
function generateQRfromGoogle($chl,$widhtHeight ='150',$EC_level='L',$margin='0')
{
$url = urlencode($url);
echo '<img src="http://chart.apis.google.com/chart?chs='.$widhtHeight.'x'.$widhtHeight.'&cht=qr&chld='.$EC_level.'|'.$margin.'&chl='.$chl.'" alt="QR code" widhtHeight="'.$size.'" widhtHeight="'.$size.'"/>';
}

2.php類(lèi)庫(kù)PHP QR Code
PHP QR Code is open source (LGPL) library for generating QR Code,
2-dimensional barcode. Based on libqrencode C library,
provides API for creating QR Code barcode images (PNG, JPEG thanks to GD2).
Implemented purely in PHP, with no external dependencies (except GD2 if needed).
地址:http://phpqrcode.sourceforge.net/
下載:http://sourceforge.net/projects/phpqrcode/
實(shí)例:
<?
include "./phpqrcode/phpqrcode.php";
$value="http://www.weste.net";
$errorCorrectionLevel = "L";
$matrixPointSize = "4";
QRcode::png($value, false, $errorCorrectionLevel, $matrixPointSize);
exit;
?>
主頁(yè)地址:http://phpqrcode.sourceforge.net/,站點(diǎn)里能直接下載源碼,下載后解壓到web目錄,通過(guò)網(wǎng)頁(yè)訪(fǎng)問(wèn),就可以看到demo演示。

Data表示要記錄的數(shù)據(jù),如果是存儲(chǔ)utf-8編碼的中文,最多984個(gè)。
ECC表示糾錯(cuò)級(jí)別, 糾錯(cuò)級(jí)別越高,生成圖片會(huì)越大。
L水平 7%的字碼可被修正
M水平 15%的字碼可被修正
Q水平 25%的字碼可被修正
H水平 30%的字碼可被修正Size表示圖片每個(gè)黑點(diǎn)的像素。
代碼的調(diào)用范例:
include "qrlib.php";
QRcode::png($data, $filename, $errorCorrectionLevel, $matrixPointSize, $margin);
/*
$data 數(shù)據(jù)
$filename 保存的圖片名稱(chēng)
$errorCorrectionLevel 錯(cuò)誤處理級(jí)別
$matrixPointSize 每個(gè)黑點(diǎn)的像素
$margin 圖片外圍的白色邊框像素
*/
QR碼詳細(xì)原理可以參考QR維基百科,中文版介紹比較少,英文版介紹很全面,推薦看英文版的。
另外,現(xiàn)在QR碼已經(jīng)有彩色版的了,還可以嵌入個(gè)性圖片,我在這方面做了些研究, 如果有興趣,可以和我聯(lián)系交流。我的聯(lián)系郵箱參考網(wǎng)站右邊欄目。
3.libqrencode
地址:http://fukuchi.org/works/qrencode/index.en.html
php支持請(qǐng)參考:http://hirokawa.netflowers.jp/entry/4900/
4.QRcode Perl CGI & PHP scripts
地址:http://www.swetake.com/qr/qr_cgi.html
PS:這里再提供一個(gè)本站二維碼工具(帶logo與各種定制功能),功能十分強(qiáng)大!免費(fèi)供大家使用:
相關(guān)文章
PHP實(shí)現(xiàn)基于面向?qū)ο蟮膍ysqli擴(kuò)展庫(kù)增刪改查操作工具類(lèi)
這篇文章主要介紹了PHP實(shí)現(xiàn)基于面向?qū)ο蟮膍ysqli擴(kuò)展庫(kù)增刪改查操作工具類(lèi),結(jié)合實(shí)例形式分析了mysqli增刪改查操作類(lèi)的封裝與使用技巧,需要的朋友可以參考下2017-07-07php 模擬POST|GET操作實(shí)現(xiàn)代碼
很早的時(shí)候,參加面試,需要使用php的函數(shù)模擬一個(gè)post訪(fǎng)問(wèn)。盡管對(duì)php很熟悉,但是由于面試之前很長(zhǎng)時(shí)間沒(méi)有使用php語(yǔ)言,所以就沒(méi)有答上來(lái)。2010-07-07PHP+sqlite數(shù)據(jù)庫(kù)操作示例(創(chuàng)建/打開(kāi)/插入/檢索)
這篇文章主要介紹了PHP+sqlite數(shù)據(jù)庫(kù)操作的方法,簡(jiǎn)單分析了sqlite數(shù)據(jù)庫(kù)的功能及相關(guān)操作技巧,包括創(chuàng)建,打開(kāi),插入,檢索及錯(cuò)誤提示等,需要的朋友可以參考下2016-05-05php實(shí)現(xiàn)簡(jiǎn)單文件下載的方法
這篇文章主要介紹了php實(shí)現(xiàn)簡(jiǎn)單文件下載的方法,以實(shí)例形式簡(jiǎn)單分析了文件下載的原理與實(shí)現(xiàn)技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-01-01php?substr()去掉最后一位字符的實(shí)例方法
在本篇文章里小編給大家整理了一篇關(guān)于php?substr()去掉最后一位字符的實(shí)例方法,有興趣的朋友們可以跟著學(xué)習(xí)下。2021-12-12PHP使用CURL實(shí)現(xiàn)下載文件功能示例
這篇文章主要介紹了PHP使用CURL實(shí)現(xiàn)下載文件功能,結(jié)合具體實(shí)例形式分析了php基于curl的文件下載實(shí)現(xiàn)技巧,代碼注釋有詳細(xì)的功能說(shuō)明,并附帶了curl參數(shù)的功能講解,需要的朋友可以參考下2019-06-06golang、python、php、c++、c、java、Nodejs性能對(duì)比
這篇文章主要介紹了golang、python、php、c++、c、java、Nodejs性能對(duì)比的相關(guān)資料,需要的朋友可以參考下2017-03-03PHP實(shí)現(xiàn)對(duì)數(shù)字分隔加千分號(hào)的方法
今天小編就為大家分享一篇關(guān)于PHP實(shí)現(xiàn)對(duì)數(shù)字分隔加千分號(hào)的方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-03-03