php二维码生成


Posted in PHP onOctober 19, 2015

本文介绍两种使用 php 生成二维码的方法。
(1)利用google生成二维码的开放接口,代码如下:

/** 
 * google api 二维码生成【QRcode可以存储最多4296个字母数字类型的任意文本,具体可以查看二维码数据格式】 
 * @param string $data 二维码包含的信息,可以是数字、字符、二进制信息、汉字。不能混合数据类型,数据必须经过UTF-8 URL-encoded.如果需要传递的信息超过2K个字节,请使用POST方式 
 * @param int $widhtHeight 生成二维码的尺寸设置 
 * @param string $EC_level 可选纠错级别,QR码支持四个等级纠错,用来恢复丢失的、读错的、模糊的、数据。 
 *       L-默认:可以识别已损失的7%的数据 
 *       M-可以识别已损失15%的数据 
 *       Q-可以识别已损失25%的数据 
 *       H-可以识别已损失30%的数据 
 * @param int $margin 生成的二维码离图片边框的距离 
 */ 
function generateQRfromGoogle($data,$widhtHeight='150',$EC_level='L',$margin='0'){ 
 $url=urlencode($data); 
 echo '<img src="http://chart.apis.google.com/chart?chs='.$widhtHeight.'x'.$widhtHeight.'&cht=qr&chld='.$EC_level.'|'.$margin.'&chl='.$data.'" widhtHeight="'.$widhtHeight.'" widhtHeight="'.$widhtHeight.'"/>'; 
}

使用方法:

$data='版权所有:https://3water.com'; 
generateQRfromGoogle($data);

post方法实现请求google api 生成二维码的方式:

function qrcode($width,$height,$string){ 
 $post_data=array(); 
 $post_data['cht']='qr'; 
 $post_data['chs']=$width."x".$height; 
 $post_data['chl']=$string; 
 $post_data['choe']="UTF-8"; 
 $url="http://chart.apis.google.com/chart"; 
 $data_Array=array(); 
 foreach($post_data as $key=>$value){ 
  $data_Array[]=$key.'='.$value; 
 } 
 $data=implode("&",$data_Array); 
 $ch=curl_init(); 
 curl_setopt($ch, CURLOPT_POST, 1); 
 curl_setopt($ch, CURLOPT_HEADER, 0); 
 curl_setopt($ch, CURLOPT_URL, $url);  
 curl_setopt($ch, CURLOPT_POSTFIELDS,$data); 
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
 $result=curl_exec($ch); 
 //echo "<img src =\"data:image/png;base64,".base64_encode($result)."\" >"; 注意,不写header的写法 
 return $result; 
}

使用方法:

header("Content-type:image/png"); 
$width=300; 
$height=300; 
$data='版权所有:https://3water.com';
echo qrcode($width,$height,$data);

当然生成的图片同上面是一样的。

(2)使用php QR Code类库生成二维码
注意使用该类库必须首先下载类库包,下载地址:
地址:http://phpqrcode.sourceforge.net/
下载下来的压缩包里面有很多示例,可以自行研究,下面给出一个简单的使用案例(具体参数的意思和上面大同小异):

<?php 
include "./phpqrcode.php"; 
$data='版权所有:https://3water.com'; 
$errorCorrectionLevel="L"; 
$matrixPointSize="4"; 
QRcode::png($data,false,$errorCorrectionLevel,$matrixPointSize);

以上所述就是本文的全部内容了,希望对大家熟练掌握php生产二维码能够有所帮助。

PHP 相关文章推荐
php抓即时股票信息
Oct 09 PHP
mysql中存储过程、函数的一些问题
Feb 14 PHP
PHP控制网页过期时间的代码
Sep 28 PHP
php xml常用函数的集合(比较详细)
Jun 06 PHP
解析php取整的几种方式
Jun 25 PHP
header导出Excel应用示例
Jan 24 PHP
php中将一个对象保存到Session中的方法
Mar 13 PHP
php实现文章置顶功能的方法
Oct 20 PHP
PHP+MYSQL实现读写分离简单实战
Mar 13 PHP
PHP PDOStatement::bindParam讲解
Jan 30 PHP
PHP+fiddler抓包采集微信文章阅读数点赞数的思路详解
Dec 20 PHP
laravel与thinkphp之间的区别与优缺点
Mar 02 PHP
部署PHP时的4个配置修改说明
Oct 19 #PHP
PHP代码判断设备是手机还是平板电脑(两种方法)
Oct 19 #PHP
基于PHP实现假装商品限时抢购繁忙的效果
Oct 16 #PHP
php如何连接sql server
Oct 16 #PHP
Apache启动报错No space left on device: AH00023该怎么解决
Oct 16 #PHP
PHP 中 Orientation 属性判断上传图片是否需要旋转
Oct 16 #PHP
全面解读PHP的人气开发框架Laravel
Oct 15 #PHP
You might like
Syphon 秘笈
2021/03/03 冲泡冲煮
PHP时间戳与日期之间转换的实例介绍
2013/04/19 PHP
PHP JS Ip地址及域名格式检测代码
2013/09/27 PHP
php页面防重复提交方法总结
2013/11/25 PHP
thinkPHP+ajax实现统计页面pv浏览量的方法
2017/03/15 PHP
js列举css中所有图标的实现代码
2011/07/04 Javascript
Jquery EasyUI的添加,修改,删除,查询等基本操作介绍
2013/10/11 Javascript
js代码实现的加入收藏效果并兼容主流浏览器
2014/06/23 Javascript
Jquery遍历Json数据的方法
2015/04/20 Javascript
jquery实现清新实用的网页菜单效果
2015/08/28 Javascript
JS+CSS实现大气的黑色首页导航菜单效果代码
2015/09/10 Javascript
JavaScript判断微信浏览器实例代码
2016/06/13 Javascript
React Native实现简单的登录功能(推荐)
2016/09/19 Javascript
JS实现京东首页之页面顶部、Logo和搜索框功能
2017/01/12 Javascript
vue中的event bus非父子组件通信解析
2017/10/27 Javascript
提升node.js中使用redis的性能遇到的问题及解决方法
2018/10/30 Javascript
webpack proxy 使用(代理的使用)
2020/01/10 Javascript
[46:20]DOTA2-DPC中国联赛 正赛 PSG.LGD vs LBZS BO3 第二场 1月22日
2021/03/11 DOTA
Python创建xml文件示例
2017/03/22 Python
使用python中的in ,not in来检查元素是不是在列表中的方法
2018/07/06 Python
selenium + python 获取table数据的示例讲解
2018/10/13 Python
深入解析Python小白学习【操作列表】
2019/03/23 Python
Python 串口读写的实现方法
2019/06/12 Python
Python生态圈图像格式转换问题(推荐)
2019/12/02 Python
Tensorflow分批量读取数据教程
2020/02/07 Python
python3+selenium获取页面加载的所有静态资源文件链接操作
2020/05/04 Python
python 带时区的日期格式化操作
2020/10/23 Python
HTML5 weui使用笔记
2019/11/21 HTML / CSS
澳大利亚优惠网站:Deals.com.au
2019/07/02 全球购物
介绍下Lucene建立索引的过程
2016/03/02 面试题
数控技术专科生自我评价
2014/01/08 职场文书
2014年最新学习全国两会精神心得
2014/03/17 职场文书
意向书范文
2014/03/31 职场文书
导游词之丽江普济寺
2019/10/22 职场文书
《攀登者》:“海拔8000米以上,你不能指望任何人”
2019/11/25 职场文书
golang语言指针操作
2022/04/14 Golang