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

yipeiwu_com5年前PHP代码库

本文实例讲述了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.jb51.net/transcoding/jb51qrcode

测试代码如下:

<?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数组(Array)操作技巧大全》、《php排序算法总结》、《PHP常用遍历算法与技巧总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《PHP数学运算技巧总结》、《php正则表达式用法总结》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总

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

相关文章

PHP防CC攻击实现代码

这种时候您的统计系统(可能是量子、百度等)当然也是统计不到的。不过我们可以借助于一些防攻击的软件来实现,不过效果有时并不明显。下面我提供一段PHP的代码,可以起到一定的防CC效果。 主要...

PHP zlib扩展实现页面GZIP压缩输出

要实现GZIP压缩页面需要浏览器和服务器共同支持,实际上就是服务器压缩,传到浏览器后浏览器解压并解析。浏览器那边不需要我们担心,因为现在绝大多数浏览器都支持解析GZIP过的页面。我们只要...

PHP 字符截取 解决中文的截取问题,不用mb系列

复制代码 代码如下:function Cut_string($string, $start ,$sublen, $extstring='...', $code = 'UTF-8') {/...

PHP中构造函数和析构函数解析

构造函数 void __construct ([ mixed $args [, $... ]] ) PHP 5 允行开发者在一个类中定义一个方法作为构造函数。具有构造函数的类会在每次创建...

php中读写文件与读写数据库的效率比较分享

这个问题也是最近才想到的,就是到底读文件更快还是读数据库更快,能快多少,天缘也搜索过,没见有网友就这个问题答复过,也可能是太简单的缘故,我们本文还是来实测一下,由于时间关系,VC还没装,...