• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    PHP生成二维码与识别二维码的方法详解【附源码下载】

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

    二维码的分类

    二维码的优缺点

    优点

    缺点

    目前流行的三大国际标准

    QR CODE 纠错能力

    前提条件

    一、PHP生成QR CODE

    目录结构

    1、qrcode_create.php

    ps:生成普通二维码

    ?php
    include_once "./qrcode/phpqrcode.php";
    /**
     * 参数:p1:二维码包含的内容 p2:输出的文件名 p3:容错级别 p4:大小 p5:外边距margin p6:保存路径
     * 在浏览器上直接生成一个二维码(内容为abc)
     */
    QRcode::png("abc");
    QRcode::png("ABC",false,QR_ECLEVEL_L,10,5,false);
    /**
     * 生成文件到本地
     * 参数:p1:二维码包含的内容 p2:输出的文件名 p3:容错级别 p4:大小 p5:外边距margin p6:是否保存并打印(false 直接生成 true 生成且打印)
     * PS:$saveandprint源码的p6参数做了修改
     */
    QRcode::png("ABC","ABC.jpg",QR_ECLEVEL_H,10,2,false);
    
    

    2、qrcode_logo.php

    ps:生成带Logo的二维码

    ?php
    /**
     * Created by PhpStorm.
     * User: user
     * Date: 2018/8/16
     * Time: 10:43
     */
    include "./qrcode/phpqrcode.php";
    $txt = "测试内容";
    $picPathAndName = "./pic/ABC.jpg";//二维码保存路径和名称
    $level = 'L';
    $size = 5;
    $is_logo = 1;//是否包含Logo 0否 1是
    $margin = 2;//边距
    $saveAndPrint = true;//是否保存,保存时,$picPathAndName设置为true
    //生成二维码图片QRcode::png($txt, $picPathAndName, $level, $size, $margin,$saveAndPrint);
    if($is_logo == 1){
     $QR = $picPathAndName; //已经生成的原始二维码图
     $Logo = './pic/logo.png';
     $Logo_re = './pic/test_logo.png';
     $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);
     //输出图片
     imagepng($QR, $Logo_re);
    }
    
    

    3、qrcode_vcard.php (生成电子签名)

    vCard格式:https://zh.wikipedia.org/wiki/VCard

    ?php
    /**
     * Created by PhpStorm.
     * User: user
     * Date: 2018/8/15
     * Time: 23:00
     */
    require_once "./qrcode/phpqrcode.php";
    /**
     * 生成电子签名
     * PS;使用微信扫描二维码
     */
    $content = 'BEGIN:VCARD' . "\n";//起始标志
    $content .= 'VERSION:2.1' . "\n";//当前版本
    $content .= 'N:周' . "\n";//姓
    $content .= 'FN:勇' . "\n";//名
    $content .= 'ORG:江苏东大集成电路系统有限公司' . "\n";//公司名称
    $content .= 'TITLE:PHP研发程序员' . "\n";//职位
    $content .= 'TEL;WORK;VOICE:0523-83623173' . "\n";//工作电话
    $content .= 'ADR;WORK:;;高新区星火路#2;南京市;江苏省;225762;中国' . "\n";//工作地址
    $content .= 'ADR;HOME:;;下圩镇王横村178号;兴化市;江苏省;225762;中国' . "\n";//家庭地址(街道,地级市,省,邮编,国家)
    $content .= 'TEL;TYPE:18000001111' . "\n";//移动电话
    $content .= 'EMAIL:123456@qq.com' . "\n";//邮箱
    $content .= 'URL:www.baidu.com' . "\n";//个人主页
    $content .= 'END:VCARD' . "\n";//结束标志
    QRcode::png($content);
    
    

    二、JQUERY生成QR CODE

    源码地址:https://github.com/jeromeetienne/jquery-qrcode

    jquery_create.php

    !DOCTYPE html>
    html lang="en">
    head>
     meta charset="UTF-8">
     title>Jquery生成二维码/title>
     script src="https://code.jquery.com/jquery-3.3.1.min.js">/script>
     script type="text/javascript" src="./jquery-qrcode/jquery.qrcode.min.js">/script>
    /head>
    body>
    div id="qrcode">/div>
    script>
     //$('#qrcode').qrcode("this plugin is great");
     $('#qrcode').qrcode({width: 64,height: 64,text: "jason"});
    /script>
    /body>
    /html>
    
    

    三、PHP识别二维码

    1、方法一

    环境需求,安装如下扩展

    2、方法二

    PHP识别二维码(无需安装扩展),初步测试普通二维码可以,带Logo的二维码,容错级别需要设置高一点页可以

    qrReader类:https://github.com/baagee/php_QrReader

    ?php
    include_once('./qrReader/lib/QrReader.php');
    $qrcode = new QrReader('./test_logo.png'); //图片路径
    $text = $qrcode->text(); //返回识别后的文本
    echo $text;
    
    

    附:完整实例代码点击此处本站下载

    PS:这里再为大家推荐两款二维码相关在线工具供大家参考使用:

    在线生成二维码工具(加强版)
    http://tools.jb51.net/transcoding/jb51qrcode

    在线二维码解码识别工具
    http://tools.jb51.net/transcoding/trans_qrcode

    更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《PHP数学运算技巧总结》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总》

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

    您可能感兴趣的文章:
    • php+laravel 扫码二维码签到功能
    • Thinkphp使用Zxing扩展库解析二维码内容图文讲解
    • PHP实现一个二维码同时支持支付宝和微信支付的示例
    • PHP基于phpqrcode类生成二维码的方法示例详解
    • PHP基于phpqrcode类库生成二维码过程解析
    • thinkphp3.2框架集成QRcode生成二维码的方法分析
    • php生成二维码不保存服务器还有下载功能的实现代码
    • PHP二维码的生成与识别案例
    上一篇:PHP使用PDO操作sqlite数据库应用案例
    下一篇:原生PHP实现导出csv格式Excel文件的方法示例【附源码下载】
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    PHP生成二维码与识别二维码的方法详解【附源码下载】 PHP,生成,二维,码,与,识别,