php生成二维码的几种方式整理及使用实例


Posted in PHP onJune 03, 2013

1.google开放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.'"/>'; 

}

php生成二维码的几种方式整理及使用实例 
2.php类库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/
实例:

<? 

include "./phpqrcode/phpqrcode.php"; 

$value="http://www.weste.net"; 

$errorCorrectionLevel = "L"; 

$matrixPointSize = "4"; 

QRcode::png($value, false, $errorCorrectionLevel, $matrixPointSize); 

exit; 

?>

主页地址:http://phpqrcode.sourceforge.net/,站点里能直接下载源码,下载后解压到web目录,通过网页访问,就可以看到demo演示。
php生成二维码的几种方式整理及使用实例 
Data表示要记录的数据,如果是存储utf-8编码的中文,最多984个。
ECC表示纠错级别, 纠错级别越高,生成图片会越大。
L水平 7%的字码可被修正
M水平 15%的字码可被修正
Q水平 25%的字码可被修正
H水平 30%的字码可被修正Size表示图片每个黑点的像素。
代码的调用范例:
include "qrlib.php"; 

QRcode::png($data, $filename, $errorCorrectionLevel, $matrixPointSize, $margin); 

/* 

$data 数据 

$filename 保存的图片名称 

$errorCorrectionLevel 错误处理级别 

$matrixPointSize 每个黑点的像素 

$margin 图片外围的白色边框像素 

*/

QR码详细原理可以参考QR维基百科,中文版介绍比较少,英文版介绍很全面,推荐看英文版的。
另外,现在QR码已经有彩色版的了,还可以嵌入个性图片,我在这方面做了些研究, 如果有兴趣,可以和我联系交流。我的联系邮箱参考网站右边栏目。

3.libqrencode
地址:http://fukuchi.org/works/qrencode/index.en.html
php支持请参考:http://hirokawa.netflowers.jp/entry/4900/

4.QRcode Perl CGI & PHP scripts
地址:http://www.swetake.com/qr/qr_cgi.html

PS:这里再提供一个本站二维码工具(带logo与各种定制功能),功能十分强大!免费供大家使用:

PHP 相关文章推荐
php 日期和时间的处理-郑阿奇(续)
Jul 04 PHP
ThinkPHP关于session的操作方法汇总
Jul 18 PHP
PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法
Aug 28 PHP
php计算税后工资的方法
Jul 28 PHP
PHP通过反射动态加载第三方类和获得类源码的实例
Nov 27 PHP
ThinkPHP项目分组配置方法分析
Mar 23 PHP
PHP批量获取网页中所有固定种子链接的方法
Nov 18 PHP
thinkPHP自定义类实现方法详解
Nov 30 PHP
thinkphp查询,3.X 5.0方法(亲试可行)
Jun 17 PHP
PHP实现基于面向对象的mysqli扩展库增删改查操作工具类
Jul 18 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
Sep 22 PHP
PHP数组array类常见操作示例
May 15 PHP
深入PHP异步执行的详解
Jun 03 #PHP
php实现自动获取生成文章主题关键词功能的深入分析
Jun 03 #PHP
基于MySQL到MongoDB简易对照表的详解
Jun 03 #PHP
PHP Error与Logging函数的深入理解
Jun 03 #PHP
作为PHP程序员应该了解MongoDB的五件事
Jun 03 #PHP
基于Discuz security.inc.php代码的深入分析
Jun 03 #PHP
基于HBase Thrift接口的一些使用问题及相关注意事项的详解
Jun 03 #PHP
You might like
5.PHP的其他功能
2006/10/09 PHP
php 表单数据的获取代码
2009/03/10 PHP
php实现utf-8转unicode函数分享
2015/01/06 PHP
使用PHP接受文件并获得其后缀名的方法
2015/08/05 PHP
Javascript this关键字使用分析
2008/10/21 Javascript
JS下高效拼装字符串的几种方法比较与测试代码
2010/04/15 Javascript
Jquery同辈元素选中/未选中效果的实例代码
2013/08/01 Javascript
javascript实现tab切换特效
2015/11/12 Javascript
js控制TR的显示隐藏
2016/03/04 Javascript
JavaScript输入框字数实时统计更新
2017/06/17 Javascript
详解webpack分离css单独打包
2017/06/21 Javascript
js学习总结之DOM2兼容处理this问题的解决方法
2017/07/27 Javascript
vue-cli webpack 引入jquery的方法
2018/01/10 jQuery
Angular HMR(热模块替换)功能实现方法
2018/04/04 Javascript
详解Puppeteer 入门教程
2018/05/09 Javascript
js使用formData实现批量上传
2020/03/27 Javascript
vue安装遇到的5个报错及解决方法
2019/06/12 Javascript
vue 导航内容设置选中状态样式的例子
2019/11/01 Javascript
详解Vue+elementUI build打包部署后字体图标丢失问题
2020/07/13 Javascript
vue项目中微信登录的实现操作
2020/09/08 Javascript
Python函数嵌套实例
2014/09/23 Python
Python os模块中的isfile()和isdir()函数均返回false问题解决方法
2015/02/04 Python
使用Python求解最大公约数的实现方法
2015/08/20 Python
Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式示例
2019/09/29 Python
Python+Appium实现自动化测试的使用步骤
2020/03/24 Python
keras实现VGG16方式(预测一张图片)
2020/07/07 Python
python基于exchange函数发送邮件过程详解
2020/11/06 Python
What is EJB
2016/07/22 面试题
大学生专科毕业生自我评价
2013/11/17 职场文书
《愚公移山》教学反思
2014/02/20 职场文书
初中家长寄语
2014/04/02 职场文书
英语专业自荐书
2014/06/13 职场文书
群众路线教育实践活动对照检查材料
2014/09/22 职场文书
党员思想汇报材料
2014/12/19 职场文书
工厂采购员岗位职责
2015/04/07 职场文书
高考要来啦!用Python爬取历年高考数据并分析
2021/06/03 Python