欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

php 下载保存文件保存到本地的两种实现方法

程序员文章站 2022-06-08 20:58:35
第一种:

第一种:

<?php 
function downfile()
{
 $filename=realpath("resume.html"); //文件名
 $date=date("ymd-h:i:m");
 header( "content-type:  application/octet-stream "); 
 header( "accept-ranges:  bytes "); 
header( "accept-length: " .filesize($filename));
 header( "content-disposition:  attachment;  filename= {$date}.doc"); 
 echo file_get_contents($filename);
 readfile($filename); 
}
downfile();
?>


<?php 
function downfile($fileurl)
{
 ob_start(); 
 $filename=$fileurl;
 $date=date("ymd-h:i:m");
 header( "content-type:  application/octet-stream "); 
 header( "accept-ranges:  bytes "); 
 header( "content-disposition:  attachment;  filename= {$date}.doc"); 
 $size=readfile($filename); 
  header( "accept-length: " .$size);
}
 $url="url地址";
 downfile($url);
?> 

第二种:

<?php 
function downfile($fileurl)
{
$filename=$fileurl;
$file  =  fopen($filename, "rb"); 
header( "content-type:  application/octet-stream "); 
header( "accept-ranges:  bytes "); 
header( "content-disposition:  attachment;  filename= 4.doc"); 
$contents = "";
while (!feof($file)) {
 $contents .= fread($file, 8192);
}
echo $contents;
fclose($file); 
}
$url="url地址";
downfile($url);
?>

php实现下载文件的两种方法。分享下,有用到的朋友看看哦。

方法一:

<?php
/**
* 下载文件
* header函数
*
*/
header('content-description: file transfer');

header('content-type: application/octet-stream');
header('content-disposition: attachment; filename='.basename($filepath));
header('content-transfer-encoding: binary');
header('expires: 0′);
header('cache-control: must-revalidate, post-check=0, pre-check=0′);
header('pragma: public');
header('content-length: ' . filesize($filepath));
readfile($file_path);
?>

了解php中header函数的用法。

方法二:

<?php
//文件下载
//readfile
$fileinfo = pathinfo($filename);
header('content-type: application/x-'.$fileinfo['extension']);
header('content-disposition: attachment; filename='.$fileinfo['basename']);
header('content-length: '.filesize($filename));
readfile($thefile);
exit();
?>