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

yipeiwu_com6年前PHP代码库

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.'"/>';
}

 
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演示。
 
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与各种定制功能),功能十分强大!免费供大家使用:

http://tools.jb51.net/transcoding/jb51qrcode

相关文章

php实现验证邮箱格式的代码实例

验证邮箱格式是否正确可以通过filter_var函数来实现。函数介绍:filter_var() 函数通过指定的过滤器过滤一个变量。语法: filter_var(variable, ...

PHP通过session id 实现session共享和登录验证的代码

先说说,这个机制的用途吧,到现在为止战地知道这个机制有两个方面的用途: 首先,多服务器共享session问题,这个大家应该都能够理解的,当一个网站的用户量过大,就会使用服务器集群,例如专...

php 抽象类的简单应用

All right, 父类postParent定义为抽象,规定子类必须重新实现 buildHTML()方法,这个方法并没有花括号,如果有不管有没有内容都会报错的。 现在越看越觉得这代码完...

原生JS实现Ajax通过GET方式与PHP进行交互操作示例

原生JS实现Ajax通过GET方式与PHP进行交互操作示例

本文实例讲述了原生JS实现Ajax通过GET方式与PHP进行交互操作。分享给大家供大家参考,具体如下: 一、代码 conn.php <?php $conn=mys...

PHP开发规范手册之PHP代码规范详解

涉及多个方面,比如PHP代码规范、PHP文件命名规范、网站开发流程、网站安全与维护等。作为PHP开发规范的开篇,我从一个纯PHP开发者的角度来说说我所认为的PHP代码规范,主要从PHP目...