当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP实现文件安全下载的程序

PHP
PHP Tokenizer 学习笔记
三步搞定phpwind的静态化部署
DEDE5.3把tag标签逗号改成空格的方法分享
实例解析:从IIS的ASP迁移到APACHE的PHP
PHP读取Excel 之 Spreadsheet_Excel_Reader
PHP导出Excel 之 Spreadsheet_Excel_Writer
PDO不推广,PHP得不到发展
勇于创新,激情开拓新的未来
PHPCMS开发文档里看到PHP编码规范
一个模版引擎的诞生 开发者的思考
关于PHP开发框架
开发框架的选择和设计经验谈
框架带给我们什么(浅谈PHP框架对PHP发展的影响)
通过PHP实现DataGrid功能
php curl函数应用方法之模拟浏览器
单汉字转UNICODE
php在线打包/解包
listdir($dir) 目录读取函数
使用Apache的rewrite技术
php正则

PHP实现文件安全下载的程序


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 152 ::
收藏到网摘: n/a

PHP实现文件安全下载

程序如下:

以下为引用的内容:

  $file_name = "info_check.exe";

  $file_dir = "/public/www/download/";

  if (!file_exists($file_dir . $file_name)) { //检查文件是否存在

  echo "文件找不到";

  exit;

  } else {

  $file = fopen($file_dir . $file_name,"r"); //打开文件

  //输入文件标签

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

  Header("Accept-Ranges: bytes");

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

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

  //输出文件内容

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

  fclose($file);

  exit;}

  而如果文件路径是"http"或者"ftp"网址的话,则源代码会有少许改变,程序如下:

  $file_name = "info_check.exe";

  $file_dir = "www.www.ruanchen.com/";

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

  if (!$file) {

  echo "文件找不到";

  } else {

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

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

  while (!feof ($file)) {

  echo fread($file,50000);

  }

  fclose ($file);

  }

这样就可以用PHP直接输出文件了