阅读模式:

php生成二维码

查看:8019  回复:0  类型:  来源:php自学网  标签 php

php生成二维码图片的代码,需要先去phpqrcode官网下载插件。

下载地址:https://sourceforge.net/projects/phpqrcode/files/releases/

下载完解压,只要找到目录中的phpqrcode.php文件复制到你的项目中即可,include这个文件并实例化

二维码容错级别:

     电平L(低) 7%的码字可以被恢复。

     M级(中) 的码字的15%可以被恢复。

     级Q(四分)[ 28 ] 的码字的25%可以被恢复。

     H级(高) 的码字的30%可以被恢复。

一、php生成普通二维码

<?php
    include_once 'phpqrcode.php';
    $value = $_GET['url'];//二维码内容
    $level = 'H';//容错级别
    $size = 5;//生成图片大小

    //生成二维码图片
    QRcode::png($value, 'qrcode.png', $level, $size, 2);
    $QR = 'qrcode.png';//已经生成的原始二维码图
    $QR = imagecreatefromstring(file_get_contents($QR));
    
    //输出图片
    Header("Content-type: image/png");
    ImagePng($QR)

二、php生成带logo的二维码

include ('phpqrcode.php');
$value = $_GET['url'];//二维码内容
$errorCorrectionLevel = 'H';//容错级别
$matrixPointSize = 5;//生成图片大小
//生成二维码图片
QRcode::png($value, 'qrcode.png', $errorCorrectionLevel, $matrixPointSize, 2);
$logo = 'http://zixuephp.net/static/images/favicon.jpg';//准备好的logo图片
$QR = 'qrcode.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图片宽度
    $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);
}
//输出图片
Header("Content-type: image/png");
ImagePng($QR);

        在图片标签中引用qrimg.php文件,<img src="qrimg.php"/>输出图片。

三、jquery.qrcode.js生成二维码

<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>jquery.qrcode.js 生成二维码</title>
    <script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js"></script>
     <script src="https://cdn.bootcss.com/jquery.qrcode/1.0/jquery.qrcode.min.js"></script>
  </head>
  <body>
    <h1>jquery.qrcode.js 生成二维码</h1>
   <div style="margin:0 auto;width:300px;height:300px;" id="qrcode"></div>
   <script>
     jQuery(function(){
             jQuery('#qrcode').qrcode({
                render: "canvas",
                width: 300,
                height: 300,
                text: encodeURI("http://zixuephp.net/article-144.html"),  //二维码内容
                background: "#ffffff",  //背景颜色
                foreground: "#000000",  //前景颜色
             });       
     })
   </script>
  </body>
</html>

jquery.qrcode.js logo可以用绝对定位覆盖二维码上去。

分享到:
2 0

*有问题之处烦请在评论中指出非常感谢!
不是我想要的内容,继续搜索:

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
javascript点击复制内容   阅读:8200解决 nginx 413 request entity too large   阅读:5403php翻转字符串   阅读:4479centos 7 忘记root密码   阅读:5859最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:34543centos 7 安装 php-7.1.3   阅读:22281mongodb设置shell开机启动脚本   阅读:11710centos 7搭建zabbix3.4   阅读:7622shell脚本批量删除几天前的文件   阅读:11883php压缩页面的html代码一行显示   阅读:8724phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:13516Nginx 配置文件详解   阅读:6079解决 nginx 413 request entity too large   阅读:5403centos7中颁发CA证书并开启web https   阅读:9647栈和堆的区别   阅读:5974centos 7 添加 redis 3.2.9 开机启动脚本   阅读:10622小米手机端商城rem适配原理   阅读:7708linux命令中执行php脚本   阅读:9481php连接redis   阅读:6558web项目高并发量网站解决方案   阅读:5432Nginx 配置文件详解   阅读:6079linux php7编译安装mongodb扩展   阅读:10166用php从1乘到100的值   阅读:7310mysql5.7主从同步中binlog同步模式详解   阅读:9283centos7中颁发CA证书并开启web https   阅读:9647人性漫画:打工与创业的残酷区别   阅读:5857封装php redis缓存操作类   阅读:10476用php从1加到100的值   阅读:10143shell脚本批量删除几天前的文件   阅读:11883phpexcel 超简单从数据库一键导出数据到excel教程   阅读:8410nginx安装redis模块   阅读:7625crontab+shell脚本实现定时备份mysql数据库   阅读:8724栈和堆的区别   阅读:5974csv文件一键导入数据到mysql数据库   阅读:7776给网站添加一键新浪微博登录的功能   阅读:7406nginx编译安装后对nginx进行平滑升级   阅读:7782centos 7 设置 nginx-1.11.10 开机启动   阅读:9046爱编程,也爱健康   阅读:5247php压缩页面的html代码一行显示   阅读:8724centos 7 添加 redis 3.2.9 开机启动脚本   阅读:10622知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:7836解决 nginx 413 request entity too large   阅读:5403linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:19554知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:7836linux命令中执行php脚本   阅读:9481比phpexcel还要简单的excel CSV 一键导入数据到数据库   阅读:6167TCP的三次握手(建立连接)和四次挥手(关闭连接)   阅读:4871把php session 会话保存到redis   阅读:8453爱编程,也爱健康   阅读:5247centos 7 安装 nginx-1.11.10   阅读:9608