阅读模式:

php生成二维码

查看:6258  回复: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

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

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
人性漫画:打工与创业的残酷区别   阅读:4344面试的时候和你谈理想,是理想or入坑?   阅读:9310csv文件一键导入数据到mysql数据库   阅读:6131php显示刚刚、几分钟前、几小时前、几天前的函数   阅读:7651javascript对cookie操作详细代码函数   阅读:4913知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:5711php 读取和设置redis的键值   阅读:6809php生成二维码   阅读:6263mysql数据库性能的基本优化   阅读:4188解决 nginx 413 request entity too large   阅读:4045mysql5.7开启sql日志的配置   阅读:8200php翻转字符串   阅读:3013web项目高并发量网站解决方案   阅读:4155php 生成图片,给图片加水印   阅读:5168企业让你去面试,可能不是真的招人   阅读:5460web项目高并发量网站解决方案   阅读:4155mysql数据一键导出到csv文件   阅读:5122php显示刚刚、几分钟前、几小时前、几天前的函数   阅读:7651面试的时候和你谈理想,是理想or入坑?   阅读:9310mysql数据库性能的基本优化   阅读:4188比phpexcel还要简单的excel CSV 一键导入数据到数据库   阅读:4623nginx安装redis模块   阅读:4318mysql 为什么添加索引可以提高访问速度   阅读:5529centos7.3安装mongodb3.6   阅读:6767centos 7 安装 mysql-5.7   阅读:6261mysql的四种索引类型   阅读:20416web项目高并发量网站解决方案   阅读:4155TCP的三次握手(建立连接)和四次挥手(关闭连接)   阅读:2716php设置cookie为HttpOnly防止XSS攻击   阅读:11691什么是天使轮?什么是A轮融资?B轮融资?   阅读:4285霍金24岁博士毕业论文在线预览   阅读:5150一步步带你,如何网站架构   阅读:3722php文件下载防盗链   阅读:9123php打印三角形   阅读:7895面试都会问你为什么你从上一家公司离职的真实意思   阅读:10286shell脚本统计当前服务器并发连接数   阅读:6493phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:11470php打印三角形   阅读:7895给php7安装redis扩展库   阅读:7694Mysql在大型网站的应用架构演变   阅读:4169ajax+php 实现一个简单的在线聊天室功能(附带源码)   阅读:8497nginx安装mysql和json模块   阅读:4084什么是天使轮?什么是A轮融资?B轮融资?   阅读:4285网站性能优化-页面静态缓存   阅读:5089最新centos7 搭建LNMP环境(centos7.2+php7+mysql5.7+nginx1.11+redis3.2)   阅读:10138php压缩页面的html代码一行显示   阅读:6581mongodb设置shell开机启动脚本   阅读:8994nginx安装redis模块   阅读:4318给 centos 7 安装桌面环境   阅读:16136mongodb设置shell开机启动脚本   阅读:8994