PHP识别二维码的方法(php-zbarcode安装与使用)


Posted in PHP onJuly 07, 2016

本文实例讲述了PHP识别二维码的方法。分享给大家供大家参考,具体如下:

说明:扩展需要依赖ImageMagick和zbar,安装前先安装这两个软件

1.安装ImageMagick(http://www.imagemagick.org/)

yum install ImageMagick.x86_64 ImageMagick-devel.x86_64

2.安装zbar(http://sourceforge.net/projects/zbar/?source=directory)

wget http://jaist.dl.sourceforge.net/project/zbar/zbar/0.10/zbar-0.10.tar.bz2
tar jxvf zbar-0.10.tar.bz2
cd zbar-0.10
#注意此步有大坑,要禁止gtk,python和qt的支持,不然你就等着无限报错吧
./configure --without-gtk --without-python --without-qt --prefix=/usr/local/zbar
make && make install
#提示如下为完成,不是报错
#make[2]: Leaving directory `/root/zbar-0.10'
#make[1]: Leaving directory `/root/zbar-0.10'
#echo “/usr/local/zbar/lib/” >> /etc/ld.so.conf
 ldconfig
 ln -s /usr/local/zbar/lib/pkgconfig/zbar.pc /usr/lib64/pkgconfig/zbar.pc

3.安装php-zbarcode(https://github.com/mkoppanen/php-zbarcode)

unzip php-zbarcode-master.zip
cd php-zbarcode-master
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
#提示如下完成
#Build complete.
#Don't forget to run 'make test'.
#Installing shared extensions:   /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/

4.添加:extension=zbarcode.so 到php.ini配置文件

此时查看phpinfo();后搜索zbarcode后为完成

5.测试效果

图片取自https://en.wikipedia.org/wiki/File:Ean-13-5901234123457.png

另外,用户还可以使用本站二维码生成工具来生成二维码图片进行测试:
http://tools.3water.com/transcoding/3waterqrcode

测试代码如下:

<?php
  //新建一个图像对象
  $image = new ZBarCodeImage("./test.png");
  // 创建一个二维码识别器
  $scanner = new ZBarCodeScanner();
  //识别图像
  $barcode = $scanner->scan($image);
  //循环输出二维码信息
  if (!empty($barcode)) {
    foreach ($barcode as $code) {
      printf("Found type %s barcode with data %s\n", $code['type'], $code['data']);
    }
  }
?>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP扩展编写点滴 技巧收集
Mar 09 PHP
php数据结构与算法(PHP描述) 查找与二分法查找
Jun 21 PHP
解析PHP中的file_get_contents获取远程页面乱码的问题
Jun 25 PHP
PHP引用(&amp;)各种使用方法实例详解
Mar 20 PHP
PHP中spl_autoload_register()和__autoload()区别分析
May 10 PHP
让codeigniter与swfupload整合的最佳解决方案
Jun 12 PHP
php用户注册时常用的检验函数实例总结
Dec 22 PHP
简介WordPress中用于获取首页和站点链接的PHP函数
Dec 17 PHP
php框架CodeIgniter使用redis的方法分析
Apr 13 PHP
PHP编程实现的TCP服务端和客户端功能示例
Apr 13 PHP
浅谈Laravel模板实体转义带来的坑
Oct 22 PHP
PHP常用header头定义代码示例汇总
Aug 29 PHP
PHP使用PHPExcel删除Excel单元格指定列的方法
Jul 06 #PHP
PHP判断JSON对象是否存在的方法(推荐)
Jul 06 #PHP
PHP通过微信跳转的Code参数获取用户的openid(关键代码)
Jul 06 #PHP
Yii2 RESTful中api的使用及开发实例详解
Jul 06 #PHP
PHP单链表的实现代码
Jul 05 #PHP
php 数组字符串搜索array_search技巧
Jul 05 #PHP
php单链表实现代码分享
Jul 04 #PHP
You might like
曾在DC漫画界反派角色扮演的演员,谁才是你心目中的小丑之王?
2020/04/09 欧美动漫
PHP 判断变量类型实现代码
2009/10/23 PHP
PHP 获取目录下的图片并随机显示的代码
2009/12/28 PHP
理解和运用PHP中的多态性[译]
2011/08/02 PHP
PHPMYADMIN导入数据最大为2M的解决方法
2012/04/23 PHP
APACHE的AcceptPathInfo指令使用介绍
2013/01/18 PHP
如何在Ubuntu下启动Apache的Rewrite功能
2013/07/05 PHP
浅谈PHP值mysql操作类
2016/06/29 PHP
php输出形式实例整理
2020/05/05 PHP
网页禁用右键实现代码(JavaScript代码)
2009/10/29 Javascript
JQuery下关于$.Ready()的分析
2009/12/13 Javascript
举例简介AngularJS的内部语言环境
2015/06/17 Javascript
jQuery animate和CSS3相结合实现缓动追逐效果附源码下载
2016/04/18 Javascript
JQ选择器_选择同类元素的第N个子元素的实现方法
2016/09/08 Javascript
Angular2学习笔记——详解路由器模型(Router)
2016/12/02 Javascript
node+koa实现数据mock接口的方法
2017/09/20 Javascript
判断滚动条滑到底部触发事件(实例讲解)
2017/11/15 Javascript
微信小程序实现左右联动的实战记录
2018/07/05 Javascript
vue实现侧边栏导航效果
2019/10/21 Javascript
vue2.0 解决抽取公用js的问题
2020/07/31 Javascript
解决vue下载后台传过来的乱码流的问题
2020/12/05 Vue.js
[48:41]VP vs VG Supermajor小组赛 B组胜者组决赛 BO3 第二场 6.2
2018/06/03 DOTA
[03:12]完美世界DOTA2联赛PWL DAY6集锦
2020/11/05 DOTA
Python标准库os.path包、glob包使用实例
2014/11/25 Python
Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法
2015/05/20 Python
python 删除指定时间间隔之前的文件实例
2018/04/24 Python
Pytorch之finetune使用详解
2020/01/18 Python
Python远程方法调用实现过程解析
2020/07/28 Python
Python中pass语句的作用是什么
2016/06/01 面试题
中班中秋节活动反思
2014/02/18 职场文书
让生命充满爱演讲稿
2014/05/10 职场文书
离婚协议书范本样本
2014/08/19 职场文书
领导批评与自我批评范文
2014/10/16 职场文书
MybatisPlus代码生成器的使用方法详解
2021/06/13 Java/Android
Redis性能监控的实现
2021/07/09 Redis
vue elementUI表格控制对应列
2022/04/13 Vue.js