PHP QRCode 生成二维码
2017-08-03 17:54
295 查看
I、概念拓展
1).一维条码
一维条码,是由一组粗细不同、黑白(或彩色)相间的条、空及其相应的字符(数字字母)组成的标记,即传统条码。多见于产品包装,可供扫描的地方。2).二维条码
二维条码,是用某种特定的几何图形按照一定规律在平面(二维方向)上分布的条、空相间的图形(或进行抽象变形后的效果显示)来记录数据符号信息的标记。二维码分类 根据编码原理
线性堆叠式二维码
矩阵式二维码(又称棋盘式二维条码)
二维码的优缺点
优点:
信息容量大、编码范围广、容错能力强、译码可靠性高、可引入加密措施、成本低易制作
缺点:
二维码技术容易成为手机病毒、钓鱼网站传播的新渠道,信息泄密
II、QRCode(Quick Response Code)
1).二维码标准
目前流行的三大国际标准PDF417 :不支持中文
DM : 专利未公开,需要支付专利费用
QR Code : 专利公开,支持中文
QR Code 比其他二维码相比,具有识读速度快、数据密度大、占用空间小的优势.
2).QR Code 基本结构
3).QR Code 纠错能力
L 级:约可纠错 7% 的数据码字M 级:约可纠错 15% 的数据码字
Q 级:约可纠错 25% 的数据码字
H级:约可纠错 30% 的数据码字
III、代码实现
以下的代码实现,是基于ThinkPHP 3.2.3框架下的设计,但代码逻辑大同小异,代码已上传github,欢迎参考。1).php 生成QR Code
代码实现比较简单,需要引入 phpqrcode.php 文件,然后调用 png()方法,可酌情注意该方法中各个字段的使用要求,从而更能符合自己的功能设计需求。上述方法可直接访问对应的链接进行查看,为了符合html显示效果,自然也可以进行嵌入式的前端显示:
<img src="{:U('QrCode/qrCode')}">
链接显示效果显示如下,通过扫描即可获得其中的信息:
2).jquery 生成 QR Code
可以进入 jeromeetienne 的 github 下载源文件.也可以进入第三方托管库 bootcdn.cn 下载对应的jquery和qrcode文件.
对于第三方的文件,也可以下载一份部署到自己的服务器公共文件,以免对方网站服务影响访问。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <script src="__MJS__/jquery-1.8.0.min.js"></script> <script src="https://cdn.bootcss.com/jquery/3.2.1/core.js"></script> <script src="https://cdn.bootcss.com/jquery.qrcode/1.0/jquery.qrcode.min.js"></script> <!--<script src="__MJS__/jquery.qrcode.min.js"></script>--> <body> <div id="qrcode"></div> </body> <script> $("#qrcode").qrcode("Hello world"); $('#qrcode').qrcode({width: 64,height: 64,text: "Hello Baby"}); </script> </html>
实现效果如图:
3).PHP 生成电子名片
首先,了解一下 vCard 的概念:实现代码如下:
public function qrCode_vcard(){ vendor("phpqrcode.phpqrcode"); $content = 'BEGIN:VCARD'."\n"; $content.= 'VERSION: 1.3.1'."\n"; $content.= 'N: 毛球'."\n"; $content.= 'FN: 贝利斯'."\n"; $content.= 'TEL;WORK;VOICE: 18898989988'."\n"; $content.= 'TEL;HOME;VOICE: 17789889999'."\n"; $content.= 'ORG: 阿尔及利亚-安道尔'."\n"; $content.= 'URL: http:www.moTou.com'."\n"; $content.= 'END:VCARD'."\n"; \QRcode::png($content,false,QR_ECLEVEL_L,3,2); }
简要介绍代表名词:
N //姓
FN //名
ORG //公司地址
TEL;WORK;VOICE //工作单位电话
TEL;HOME;VOICE //家里电话
TEL;TYPE=cell //移动电话
ADR;HOME //家庭住址
EMAIL //邮箱
URL //网址
代码中的具体代表名词,请参考 二维码名片的格式 - vcard
QR Code 生成效果如下:
微信进行扫描后,可以得到下面的结果.
4).PHP 识别二维码
该功能个人觉得整理过于繁杂,但值得学习,建议参考附录视频,希望能帮助小猿们学到一丝有趣的东西。IV、附录
二维码(QR code)基本结构及生成原理参考视频链接
源代码下载>>>
相关文章推荐
- php调用phpqrcode.php生成二维码
- 使用 phpqrcode 生成二维码
- PHP QRCODE生成彩色二维码的方法
- 使用PHP QRcode生成二维码广告图
- 使用phpqrcode生成二维码
- 使用PHP QRCode类库生成二维码
- ThinkPHP框架整合phpqrcode生成二维码DEMO
- phpQrcode生成支付二维码logo
- PHP开发之基于phpqrcode生成带LOGO图像的二维码实例
- Thinkphp3.2.3整合phpqrcode生成带logo的二维码
- qrcode-php生成二维码
- phpqrcode 生成二维码
- QRcode php生成二维码
- php通过Qrcode生成二维码
- 二维码生成库phpqrcode使用小结
- php使用phpqrcode类库生成带图片LOGO的二维码
- 二维码生成库phpqrcode使用小结
- 使用phpqrcode生成二维码
- php phpqrcode 生成二维码
- ThinkPHP利用phpqrcode生成二维码