PHP通过PHP QR Code生成二维码

1、二维码

二维码 ,又称二维条形码,它是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的,在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理。它具有条码技术的一些共性:每种码制有其特定的字符集;每个字符占有一定的宽度;具有一定的校验功能等。同时还具有对不同行的信息自动识别功能、及处理图形旋转变化等特点。

2、PHP QR Code下载地址以及案例地址

下载:http://sourceforge.net/projects/phpqrcode/files/ 案例:http://phpqrcode.sourceforge.net/examples/

3、PHP QR Code实现简单案例以及参数说明

<?php 
include phpqrcode.php; 
      
$value="http://www.ceshi.com";
$errorCorrectionLevel = "L";
$matrixPointSize = "4";
QRcode::png($value, false, $errorCorrectionLevel, $matrixPointSize);
?>
案例说明: 
QRcode::png($data, $filename, $errorCorrectionLevel, $matrixPointSize, $margin);
[1]PHP QR Code支持png、jpg、svg、text等格式,使用方式为QRcode::svg等格式开头。
[2]$data:表示要记录的数据,如果是存储utf-8编码的中文,最多984个。
[3]$filename:保存的图片名称
[4]$errorCorrectionLevel:纠错级别(L、M、Q、H),二维码具有容错功能,当二维码图片被遮挡一部分后,仍可以扫描出来。容错率越高,则二维码图片能被遮挡的部分越多。
[5]$matrixPointSize:每个黑点的像素
[6]$margin:图片外围的白色边框像素

5、二维码常用数据格式

<?php
include phpqrcode.php; 
$value = $_GET[url];//二维码内容 
$errorCorrectionLevel = L;//容错级别 
$matrixPointSize = 6;//生成图片大小 
//生成二维码图片 
QRcode::png($value, qrcode.png, $errorCorrectionLevel, $matrixPointSize, 2); 
$logo = ceshi.png;//准备好的logo图片 
$QR = qrcode.png;//已经生成的原始二维码图 
 
if ($logo !== FALSE) { 
 $QR = imagecreatefromstring(file_get_contents($QR)); 
 $logo = imagecreatefromstring(file_get_contents($logo)); 
 $QR_width = imagesx($QR);//二维码图片宽度 
 $QR_height = imagesy($QR);//二维码图片高度 
 $logo_width = imagesx($logo);//logo图片宽度 
 $logo_height = imagesy($logo);//logo图片高度 
 $logo_qr_width = $QR_width / 5; 
 $scale = $logo_width/$logo_qr_width; 
 $logo_qr_height = $logo_height/$scale; 
 $from_width = ($QR_width - $logo_qr_width) / 2; 
 //重新组合图片并调整大小 
 imagecopyresampled($QR, $logo, $from_width, $from_width, 0, 0, $logo_qr_width, 
 $logo_qr_height, $logo_width, $logo_height); 
} 
//输出图片 
Header("Content-type: image/png");
ImagePng($QR);

经验分享 程序员 微信小程序 职场和发展