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(); ?>