php怎样下载网上的文件,php怎样实现文件下载

51401b712c35c93ec98c22cf4d0c04aa.png

用head() 和 fread()函数把文件直接输出到浏览器。

具体代码:<?php

$file_name = "down";

$file_name = "down.zip"; //下载文件名

$file_dir = "./down/"; //下载文件存放目录

//检查文件是否存在

if (! file_exists ( $file_dir . $file_name )) {

header('HTTP/1.1 404 NOT FOUND');

} else {

//以只读和二进制模式打开文件

$file = fopen ( $file_dir . $file_name, "rb" );

//告诉浏览器这是一个文件流格式的文件

Header ( "Content-type: application/octet-stream" );

//请求范围的度量单位

Header ( "Accept-Ranges: bytes" );

//Content-Length是指定包含于请求或响应中数据的字节长度

Header ( "Accept-Length: " . filesize ( $file_dir . $file_name ) );

//用来告诉浏览器,文件是可以当做附件被下载,下载后的文件名称为$file_name该变量的值。

Header ( "Content-Disposition: attachment; filename=" . $file_name );

//读取文件内容并直接输出到浏览器

echo fread ( $file, filesize ( $file_dir . $file_name ) );

fclose ( $file );

exit ();

}

更多相关教程请关注Gxlcms。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/335456.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Windows 系统下,移动硬盘无法识别怎么修复?

方案1&#xff1a;移动硬盘没有驱动器号 有时移动硬盘插入计算机&#xff0c;但无法在我的计算机上显示。此时&#xff0c;可能只是因为移动硬盘没有驱动器号。 右键单击此计算机&#xff08;计算机&#xff09;&#xff0c;然后单击[管理]将其打开。 点击左边的[磁盘管理]&a…

欢乐鼠标自动点击器_使用ESP32 DIY蓝牙自动点击器,滑屏器

前言因为爱薅羊毛&#xff0c;然后正好最近免费车一趟接一趟&#xff0c;咪咕开完&#xff0c;京东开&#xff0c;京东开完掌阅开&#xff0c;下一个不知道是谁&#xff0c;&#xff0c;&#xff0c;&#xff0c;可我又不是什么很有耐心的人&#xff0c;虽然我喜欢看书&#xf…

java单词按字典排序_最终Java日志字典:开发人员最常记录的单词是什么?

java单词按字典排序最终的记录字典&#xff0c;或者&#xff1a;我们记录的最常见单词是什么&#xff1f; 日志文件是调试应用程序的最常用方法&#xff0c;当解决错误时&#xff0c;它们肯定可以引导我们朝正确的方向发展。 但是&#xff0c;大多数日志文件每天都会增加一百万…

winscp使用密钥登录远程linux系统

说明&#xff1a; WinSCP是一个Windows环境下使用SSH的开源图形化SFTP客户端。同时putty也是一个开源连接ssh的windows客户端&#xff0c;本文介绍puttyWinSCP密钥对登录linux服务器。 1. 创建密钥对 安装openssl yum –y install openssl #openssl一般服务器都会预装 创建密…

php api 实例maccms,苹果cmsV10API接口说明

api接口仅供提供数据&#xff0c;可以直接在苹果CMS后台联盟采集中加入-并提供给他人采集。联盟资源分配唯一标识ID&#xff0c;用来区别绑定分类&#xff0c;这个ID一般由苹果CMS官方提供&#xff0c;不可随意修改设置&#xff0c;否则造成入库分类错乱。视频接口同时支持老板…

dml语句包括哪些_聊聊MySQL基本操作DDL,DML,DQL,DCL

本篇文章来回顾一下MySQL的基本操作之DDL&#xff0c;DML&#xff0c;DQL&#xff0c;DCL&#xff0c;每种操作都有各自不同的语法&#xff0c;常用的操作汇总如下。一、DDL-数据定义语言作用&#xff1a;数据定义语言主要用来定义数据库中的各类对象&#xff0c;包括用户、库、…

Windows 系统下使用 putty 客户端通过 SSH 远程连接 AWS 服务器

找到在购买亚马逊的AWS服务器时保存的密钥文件&#xff08;假设为abc.pem&#xff09;。 打开PuTTYgen&#xff0c;如下图&#xff0c;点击图中1处的“load”,找到abc.pem文件所在的位置&#xff0c;并选择abc.pem&#xff0c;确定&#xff1b; 然后&#xff0c;选择图中2处…

ip integrator_使用Oracle Data Integrator(和Kafka / MapR流)完善Lambda体系结构

ip integrator“ Lambda体系结构是一种数据处理体系结构&#xff0c;旨在通过利用批处理和流处理方法来处理大量数据。 这种体系结构方法尝试通过使用批处理提供批处理数据的全面而准确的视图&#xff0c;同时使用实时流处理提供在线数据的视图来平衡延迟 &#xff0c; 吞吐量和…

php 如何获取函数类型,PHP如何使用gettype()函数判断变量的类型?

gettype()函数是PHP中的一个内置函数&#xff0c;用于获取变量的类型&#xff1b;它可用于检查现有变量的类型。下面本篇文章就来给大家介绍一下gettype()函数&#xff0c;希望对大家有所帮助。【视频教程推荐&#xff1a;PHP教程】基本语法string gettype ( $var )参数&#x…

qfile 创建文件_Qt之二进制文件读写

点击上方“Qt学视觉”&#xff0c;选择“星标”公众号重磅干货&#xff0c;第一时间送达想要学习的同学们还请认真阅读每篇文章&#xff0c;相信你一定会有所收获除了文本文件之外&#xff0c;其他需要按照一定的格式定义读写的文件都称为二进制文件&#xff0c;每种格式的二进…

cloud foundry_实际的Reactor操作–检索Cloud Foundry应用程序的详细信息

cloud foundryCF-Java-Client是一个库&#xff0c;可通过程序访问Cloud Foundry Cloud Controller API 。 它建立在Project Reactor之上&#xff0c;它是Reactive Streams规范的实现&#xff0c;并且使用此库在Cloud Foundry环境中做一些实际的事情是一个有趣的练习。 考虑一个…

iis开启php验证码,php结合GD库实现中文验证码的简单方法

前言上一次写了一个常见的验证码&#xff0c;现在玩一下中文的验证码&#xff0c;顺便升级一下写的代码流程基本差不多先看GD库开启了没生成中文5位验证码开始画图画干扰素生成图形完事生成中文验证码//小小心机$hanzi "如果觉得写得还可以的话互相关注报团取暖交流经验来…

Linux 系统关于应该把程序安装在目录 /usr 还是目录 /usr/local 下的思考

对于一个以 LFS(Linux From Scratch 大意&#xff1a;自己做出来的 Linux) 为基础的系统来说&#xff0c;这是一个没有明确答案的问题。什么是 LFS&#xff1f; 在传统的 Unix 系统中&#xff0c;/usr 通常只包含系统发行时自带的程序&#xff0c;而 /usr/local 则是本地系统管…

数据结构设计_合并多种疾病,如何设计数据结构?

如果一个患者合并多种疾病或应用多种药物&#xff0c;如何设计数据结构&#xff1f;例如病史&#xff0c;建议设计成多选题。如果未患病&#xff0c;只需点一次“全无”&#xff0c;操作简单。如果选了全无&#xff0c;其他选框系统自动关闭&#xff0c;就不能再后面的选项了&a…

java ee的小程序_用微服务和容器替换旧版Java EE应用程序服务器

java ee的小程序Lightbend最近对2000多个JVM开发人员进行了一项调查&#xff0c;结果刚刚发布。 开展该调查的目的是发现&#xff1a;发展趋势与IT基础架构趋势之间的相关性&#xff0c;处于数字化转型前沿的组织如何使他们的应用程序现代化以及当今对新兴开发人员技术最为关注…

Linux系统下如何安装JDK?

一、首先下载linux版本jdk 点击进入jdk官网 根据自己的需求&#xff0c;下载不同版本的jdk 2.将下载好的jdk压缩包&#xff0c;通过ftp上传到linux系统的当前用户下&#xff0c;我当前登录的用户为root用户 3.将上传后的jdk&#xff0c;解压到/usr/local/目录下&#xff0c…

php网站模板怎么修改,网站后台模板修改

方法1、首先制作网站背景图片&#xff0c;这个建议找一些大尺寸的图片。(本图仅限测试使用)2、通过FTp工具链接到网站的空间&#xff0c;找到dedecms网站的模版文件templets。找到模版目录下的模版样式文件。如果使用的是默认模版&#xff0c;文件在templets/default/style/ded…

python练手经典100例微盘_Python练手项目实例汇总(附源码下载)

1 #_*_ coding:utf-8 _*_ 2 from tkinter import * 3 importrandom4 importtime5 importtkinter.messagebox6 7 8 #俄罗斯方块界面的高度 9 HEIGHT 20 10 11 #俄罗斯方块界面的宽度 12 WIDTH 10 13 14 ACTIVE 1 15 PASSIVE 016 TRUE 1 17 FALSE 018 19 style [20 [[(0,0),(…

Linux 环境变量设置及查看

文章目录一、设置变量的四种方法&#xff08;一&#xff09;在 /etc/profile 文件中添加变量&#xff08;二&#xff09;在用户目录下的 .bash_profile 文件中添加变量&#xff08;三&#xff09;使用命令 export 声明定义变量&#xff08;四&#xff09;使用命令 declare 声明…

docker 部署java_使用Docker堆栈部署的微服务-WildFly,Java EE和Couchbase

docker 部署java关于微服务的资料很多&#xff0c;只是用谷歌搜索就可以了 &#xff01; 几年前&#xff0c;我在比利时的Devoxx上发表了有关将单片重构为微服务的演讲&#xff0c;它获得了很好的评价&#xff1a; 该博客将展示Docker如何简化微服务的创建和关闭。 该博客中使…