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 Undefined index的问题
Jun 01 PHP
php 5.3.5安装memcache注意事项小结
Apr 12 PHP
PHP中extract()函数的定义和用法
Aug 17 PHP
怎样给PHP源代码加密?PHP二进制加密与解密的解决办法
Apr 22 PHP
一个经典实用的PHP图像处理类分享
Nov 18 PHP
PHP简单实现生成txt文件到指定目录的方法
Apr 25 PHP
PHP回调函数与匿名函数实例详解
Aug 16 PHP
ThinkPHP5.0框架控制器继承基类和自定义类示例
May 25 PHP
php简单检测404页面的方法示例
Aug 23 PHP
在laravel-admin中列表中禁止某行编辑、删除的方法
Oct 03 PHP
php设计模式之策略模式实例分析【星际争霸游戏案例】
Mar 26 PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
Apr 14 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
php下用cookie统计用户访问网页次数的代码
2010/05/09 PHP
php的$_FILES的临时储存文件与回收机制实测过程
2013/07/12 PHP
新手菜鸟必读:session与cookie的区别
2013/08/22 PHP
PHP编程中的常见漏洞和代码实例
2014/08/06 PHP
PHP实现抓取HTTPS内容
2014/12/01 PHP
php+mysql实现用户注册登陆的方法
2015/01/03 PHP
php实现httpRequest的方法
2015/03/13 PHP
PHP的关于变量和日期处理的一些面试题目整理
2015/08/10 PHP
PHP中大括号'{}'用法实例总结
2017/02/08 PHP
PHP迭代器和生成器用法实例分析
2019/09/28 PHP
PHP7.3.10编译安装教程
2019/10/08 PHP
javascript各种复制代码收集
2008/09/20 Javascript
javascript的trim,ltrim,rtrim自定义函数
2008/09/21 Javascript
jQuery.parseJSON(json)将JSON字符串转换成js对象
2014/07/27 Javascript
详解JavaScript中的构造器Constructor模式
2016/01/14 Javascript
JS与jQuery实现隔行变色的方法
2016/09/09 Javascript
jQuery模拟Marquee实现无缝滚动效果完整实例
2016/09/29 Javascript
浅析location.href跨窗口调用函数
2016/11/22 Javascript
Ionic + Angular.js实现验证码倒计时功能的方法
2017/06/12 Javascript
谈谈VUE种methods watch和compute的区别和联系
2017/08/01 Javascript
JavaScript时间戳与时间日期间相互转换
2017/12/11 Javascript
微信小程序生成二维码的示例代码
2019/03/29 Javascript
让 babel webpack vue 配置文件支持智能提示的方法
2019/06/22 Javascript
基于vue实现图片验证码倒计时60s功能
2019/12/10 Javascript
python连接sql server乱码的解决方法
2013/01/28 Python
Python面向对象编程中的类和对象学习教程
2015/03/30 Python
python自然语言编码转换模块codecs介绍
2015/04/08 Python
深入剖析Python的爬虫框架Scrapy的结构与运作流程
2016/01/20 Python
python基于property()函数定义属性
2020/01/22 Python
css3使用animation属性实现炫酷效果(推荐)
2020/02/04 HTML / CSS
分别介绍一下Session Bean和Entity Bean
2015/03/13 面试题
消防标语大全
2014/06/07 职场文书
超市主管竞聘书
2015/09/15 职场文书
Node.js实现断点续传
2021/06/23 Javascript
详解JS数组方法
2021/11/20 Javascript
关于EntityWrapper的in用法
2022/03/22 Java/Android