php自动生成二维码

PHP生成二维码的两种方法,1.使用google的api生成,2.使用PHP QR Code生成。

一、PHP使用google api在线生成二维码:

关于这个API的介绍就不说了吧,你可以去Google的官方网站查询,相信大家关注的是具体代码,如下:

<?php
$urlToEncode="http://www.csdn.net";//要生成二维码的网址
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.'"/>';//Google API接口,若失效可到Google网址查询最新接口
}
?>

 

<?php
include "phpqrcode.php";//引入PHP QR库文件
$value="http://www.csdn.net";
$errorCorrectionLevel = "L";
$matrixPointSize = "4";
QRcode::png($value, false, $errorCorrectionLevel, $matrixPointSize);
exit;
?>

 

PHP QR Code是一个开源的php二维码开源类库,基于libqrencode C库,并提供API代码创建QR条码图像,支持png、jpg格式。若没有这个库,可在此下载:PHP QR Code二维码生成库

 

浏览器输出

<?
include "phpqrcode/phpqrcode.php";
$errorCorrectionLevel = "L";
$matrixPointSize = "4";
QRcode::png($value, false, $errorCorrectionLevel, $matrixPointSize);
exit;
?>

文件输出

include('phpqrcode/phpqrcode.php');
// 二维码数据
// 生成的文件名
$filename = '1111.png';
// 纠错级别:L、M、Q、H
$errorCorrectionLevel = 'L';
// 点的大小:1到10
$matrixPointSize = 4;
QRcode::png($data, $filename, $errorCorrectionLevel, $matrixPointSize, 2);
中间带公司logo的二维码
<?php
include('phpqrcode/phpqrcode.php');
$errorCorrectionLevel = 'L';
$matrixPointSize = 6;
QRcode::png($value, 'xiangyang.png', $errorCorrectionLevel, $matrixPointSize, 2);
echo "QR code generated"."<br />";
$logo = 'logo.png';
$QR = 'xiangyang.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_height = imagesy($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);
}
imagepng($QR,'xiangyanglog.png');
?>

 

posted @ 2014-11-12 17:28  到站了  阅读(246)  评论(0编辑  收藏  举报