php二维码生成以及下载实现

发布时间 - 2026-01-11 03:27:46    点击率:

本文实例为大家分享了php二维码生成以及下载的具体代码,供大家参考,具体内容如下

<?php
 
//引入phpqrcode库文件
define('IN_ECS', true);
 
require(dirname(__FILE__) . '/includes/init.php');
include('includes/phpqrcode.php');
 
// 二维码数据
$data = 'http://www.baidu.com';
$filename = 'shopEwm/'.'baidu.png';
 
//down_file('baidu.png',BASE_PATH);
setShopEwm($data,$filename);
 
//生成二维码图片
function setShopEwm($data,$filename){
// 纠错级别:L、M、Q、H
 
  $errorCorrectionLevel = 'L';
  // 点的大小:1到10
  $matrixPointSize = 4;
  //创建一个二维码文件
  QRcode::png($data, $filename, $errorCorrectionLevel, $matrixPointSize, 2);
  //输入二维码到浏览器
  //QRcode::png($data);
}
//下载二维码图片
function down_file($file_name){
  $file_sub_dir = str_replace('\\','/',realpath(dirname(__FILE__).'/'))."/shopEwm/";
  //原因 php文件函数,比较古老,需要对中文转码 gb2312
  $file_name=iconv("utf-8","gb2312",$file_name);
 
  //绝对路径
  $file_path=$file_sub_dir.$file_name;
  //1.打开文件
  if(!file_exists($file_path)){
    echo "文件不存在!";
    return ;
  }
 
  $fp=fopen($file_path,"r");
  //2.处理文件
  //获取下载文件的大小
  $file_size=filesize($file_path);
 
  /* if($file_size>30){
 
  echo "<script language='javascript'>window.alert('过大')</script>";
  return ;
  } */
 
  //返回的文件
  header("Content-type: application/octet-stream");
  //按照字节大小返回
  header("Accept-Ranges: bytes");
  //返回文件大小
  header("Accept-Length: $file_size");
  //这里客户端的弹出对话框,对应的文件名
  header("Content-Disposition: attachment; filename=".$file_name);
 
  //向客户端回送数据
 
  $buffer=1024;
  //为了下载的安全,我们最好做一个文件字节读取计数器
  $file_count=0;
  //这句话用于判断文件是否结束
  while(!feof($fp) && ($file_size-$file_count>0) ){
    $file_data=fread($fp,$buffer);
    //统计读了多少个字节
    $file_count+=$buffer;
    //把部分数据回送给浏览器;
    echo $file_data;
  }
 
  //关闭文件
  fclose($fp);
 
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# php  # 二维码  # 使用PHP生成二维码的两种方法(带logo图像)  # php生成二维码的几种方式整理及使用实例  # PHP基于phpqrcode类生成二维码的方法详解  # php生成二维码图片方法汇总  # PHP微信开发之二维码生成类  # PHP QRCODE生成彩色二维码的方法  # PHP基于phpqrcode生成带LOGO图像的二维码实例  # PHP识别二维码的方法(php-zbarcode安装与使用)  # PHP生成二维码与识别二维码的方法详解【附源码下载】  # 客户端  # 回送  # 这句话  # 弹出  # 不存在  # 做一个  # 过大  # 大家分享  # 对话框  # 读了  # 创建一个  # 具体内容  # 大家多多  # 多少个  # down_file  # png  # BASE_PATH  # setShopEwm  # baidu  # file_sub_dir 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel Eloquent性能优化技巧_Laravel N+1查询问题解决  JavaScript数据类型有哪些_如何准确判断一个变量的类型  Python文件流缓冲机制_IO性能解析【教程】  如何用狗爹虚拟主机快速搭建网站?  Python并发异常传播_错误处理解析【教程】  如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】  打造顶配客厅影院,这份100寸电视推荐名单请查收  Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】  如何正确下载安装西数主机建站助手?  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  Win11怎么关闭资讯和兴趣_Windows11任务栏设置隐藏小组件  如何用景安虚拟主机手机版绑定域名建站?  如何续费美橙建站之星域名及服务?  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  php结合redis实现高并发下的抢购、秒杀功能的实例  如何用y主机助手快速搭建网站?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  图册素材网站设计制作软件,图册的导出方式有几种?  JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)  Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】  php读取心率传感器数据怎么弄_php获取max30100的心率值【指南】  Laravel如何使用Collections进行数据处理?(实用方法示例)  高防服务器租用如何选择配置与防御等级?  laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法  如何彻底删除建站之星生成的Banner?  如何在阿里云服务器自主搭建网站?  教学论文网站制作软件有哪些,写论文用什么软件 ?  Laravel如何实现多表关联模型定义_Laravel多对多关系及中间表数据存取【方法】  Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲  音响网站制作视频教程,隆霸音响官方网站?  怎么用AI帮你为初创公司进行市场定位分析?  Android自定义控件实现温度旋转按钮效果  如何在阿里云ECS服务器部署织梦CMS网站?  北京企业网站设计制作公司,北京铁路集团官方网站?  javascript基本数据类型及类型检测常用方法小结  魔毅自助建站系统:模板定制与SEO优化一键生成指南  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  Win11怎么设置默认图片查看器_Windows11照片应用关联设置  如何在Windows 2008云服务器安全搭建网站?  iOS验证手机号的正则表达式  Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  如何快速打造个性化非模板自助建站?  谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复  如何基于云服务器快速搭建网站及云盘系统?  Laravel如何集成Inertia.js与Vue/React?(安装配置)  Claude怎样写约束型提示词_Claude约束提示词写法【教程】