php 下载文件的函数
通过函数完成下载文件的PHP功能代码 function download($url, $filename) { // 获得文件大小, 防止超过2G的文件, 用sprintf来读 $filesize = sprintf ( "%u", filesize ( $url ) ); if (! $filesize) { return; } header ( "Content-type:application/octet-stream\n" ); //application/octet-stream header ( "Content-type:unknown/unknown;" ); header ( "Content-disposition: attachment; filename=\"" . $filename . "\"" ); header ( 'Content-transfer-encoding: binary' ); if ($range = getenv ( 'HTTP_RANGE' )) { // 当有偏移量的时候,采用206的断点续传头 $range = explode ( '=', $range ); $range = $range [1]; header ( "HTTP/1.1 206 Partial Content" ); header ( "Date: " . gmdate ( "D, d M Y H:i:s" ) . " GMT" ); header ( "Last-Modified: " . gmdate ( "D, d M Y H:i:s", filemtime ( $url ) ) . " GMT" ); header ( "Accept-Ranges: bytes" ); header ( "Content-Length:" . ($filesize - $range) ); header ( "Content-Range: bytes " . $range . ($filesize - 1) . "/" . $filesize ); header ( "Connection: close" . "\n\n" ); } else { header ( "Content-Length:" . $filesize . "\n\n" ); $range = 0; } loadFile ( $url );} function loadFile($filename, $retbytes = true) { $buffer = ''; $cnt = 0; $handle = fopen ( $filename, 'rb' ); if ($handle === false) { return false; } while ( ! feof ( $handle ) ) { $buffer = fread ( $handle, 1024 * 1024 ); echo $buffer; ob_flush (); flush (); if ($retbytes) { $cnt += strlen ( $buffer ); } } $status = fclose ( $handle ); if ($retbytes && $status) { return $cnt; // return num. bytes delivered like readfile() does. } return $status;}输入2个参数即可完成下载
download($url, $filename)
转载于:https://www.cnblogs.com/carlo-jie/p/5505531.html
php 下载文件的函数相关推荐
- 族谱树php源代码下载,PHP下载文件的函数实例代码
通过函数完成下载文件的PHP功能代码 function download($url, $filename) { // 获得文件大小, 防止超过2G的文件, 用sprintf来读 $filesize = ...
- php下载文件与服务器有关吗,php 下载文件功能中下载后文件大小与服务器源文件大小不一致...
1.根据网上下载文件的函数 public function putFile($file_dir, $file_name){ $file_dir = chop($file_dir);//去掉路径中多余的 ...
- Python-玩转数据-python ftp下载文件
一.说明 Python中默认安装的ftplib模块定义了FTP类,其中函数有限,可用来实现简单的ftp客户端,用于下载文件,函数列举如下: ftp登陆连接 from ftplib import FTP ...
- 腾讯对象存储服务COS加密签名上传文件与下载文件的剖析,福利提供给所有使用Android的小伙伴们!
在做一些用户需求的时候,公司往往需要工程师采集到更多有用的关于用户的个人信息,然后对用户群进行分析,今天我不是来分析这些的,今天我主要是说 腾讯推出的款云产品,那就是对象存储服务COS,这个产品面向所 ...
- php保存文件和下载文件到本地的四种方法
php保存文件和下载文件到本地的四种方法 本文操作环境:windows7系统.PHP7.1版,DELLG3电脑 php保存文件的方法 PHP下载保存文件到本地 经常需要点击按钮,然后弹 ...
- python单击url下载网页文件_使用不带url的python脚本从网页下载文件,调用onClick函数 - javascript...
有一个网页带有链接"单击下载",单击该链接可以下载文件. 我可以通过转到网页并单击此链接来手动下载此文件,但是我需要通过python脚本下载此文件. 如果我看到源代码,则可以看到锚 ...
- php fopen下载文件,php fopen下载远程文件的函数 | 学步园
//下载附件 function get_file($url, $folder = "./") { set_time_limit (24 * 60 * 60); // 设置超时时间 ...
- php抓取curl下载文件,PHP 利用 Curl 函数实现多线程抓取网页和下载文件
PHP 利用 Curl Functions 可以完成各种传送文件操作,比如模拟浏览器发送GET,POST请求等等,然而因为php语言本身不支持多线程,所以开发爬虫程序效率并不高,因此经常需要借助Cur ...
- 用python下载文件的若干种方法汇总
压缩文件可以直接放到下载器里面下载的 you-get 连接 下载任意文件 重点 用python下载文件的若干种方法汇总 写文章 用python下载文件的若干种方法汇总 zhangqibot发表于Met ...
最新文章
- opengl之自动纹理
- 基本蚁群算法的C++源程序
- linux 占用内存 脚本,linux内存测试(占用)脚本
- mysql中难以理解的sql
- string类的实现(构造函数,析构函数,运算符重载)
- 为什么BDLocationListener没有被调用
- POJ 1323 Game Prediction#贪心
- 根据IP地址获取主机名称
- 【Kafka】Kafka WARN Failed to send SSL Close message
- html无序列表只能横着排吗,[三地连线走势图]css 怎样让无序列表 横着排列
- 树莓派外设、模块、传感器 —— 数码管(F3461BH)
- UnityShader10:CG标准函数库
- 【转】cron表达式详解
- 单引号、双引号、倒引号
- MFC获取电脑硬盘序列号(附源码)
- java html网页生成pdf文件,html 网页生成pdf 文件
- 支付宝报错“暂时无法获取订单信息,请稍后再试”解决方法
- Qt tableWidget导入\导出Excel表格
- 3D图像重建中的颜色预测误差研究
- rv1109/rv1126 编译并部署QT项目(详解)
热门文章
- angular学习笔记(二十五)-$http(3)-转换请求和响应格式
- SQL中的重复记录操作
- 系统架构设计的工程与艺术(0)
- 剑指Offer(Java实现)删除链表中重复的结点
- 哈夫曼编码(Huffman)Java实现代码
- 读张鸣-《辛亥:摇晃的中国》感
- Acronis Disk Director Suite(windows7分区工具)
- Begin Your Service Journey
- Redis的常用命令——String的常用命令
- Vue常用特性——表单操作、表单域修饰符(number:转化为数值 ;trim:去掉开始和结尾的空格 ; lazy : 将input事件切换为change事件)||自定义指令|| 局部指令