php隐藏实际地址的文件下载方法

yipeiwu_com7年前PHP代码库

本文实例讲述了php隐藏实际地址的文件下载方法。分享给大家供大家参考。具体如下:

下面这段php代码可不透露实际的文件下载地址。

function download_document($filename,$path="",$mimetype="application/octet-stream")
{
 header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
 header("Content-Disposition: attachment; filename = $filename");
 header("Content-Length: " . filesize($pathto . $filename));
 header("Content-Type: $mimetype");
 echo file_get_contents($pathto . $filename);
}

实现方法二:

<?php
$file = "1.txt";// 文件的真实地址(支持url,不过不建议用url)
if (file_exists($file)) {
  header('Content-Description: File Transfer');
  header('Content-Type: application/octet-stream');
  header('Content-Disposition: attachment; filename='.basename($file));
  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($file));
  ob_clean();
  flush();
  readfile($file);
  exit;
}
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHP下对字符串的递增运算代码

有同学问了一个问题: 复制代码 代码如下: <?php for($i = 'A'; $i <= 'Z'; $i++) { echo $i; } //输出是啥? 输出是: 复...

队列在编程中的实际应用(php)

队列在编程中的实际应用(php)

一:队列的概念、数据结构 队列(Queue)是运算受到限制的一种线性表。只允许在表的一端进行插入,而在另一端进行删除元素的线性表。队尾(rear)是允许插入的一端。队头(front)是允...

php搜索文件程序分享

php搜索文件程序分享

对于本地,我们可以利用windows自带的查找去进行查找,但是对于线上的话,如查找ftp空间里面文件,本程序是很有用的。 php文件查找器源码: <html> <...

php生成随机数的三种方法

如何用php生成1-10之间的不重复随机数? 例1,使用shuffle函数生成随机数。 <?php $arr=range(1,10); shuffle($arr); f...

完美解决phpexcel导出到xls文件出现乱码的问题

解决方法如下所示: <?php include 'global.php'; $ids = $_GET['ids']; $sql = "select * from cr...