php:没有获取文件header()做什么?

时间:2013-06-06 03:54:12

标签: php file download

我是PHP的新手。我正在尝试制作简单的脚本,允许用户从网页下载文件。

<?php
require_once('Connections/connection_psfriend.php'); ?>

$receivedfilerequest = addslashes($_REQUEST['filesource']);
$file_path = $_SERVER['DOCUMENT_ROOT'].'/'.'ps-friend'.'/' . $receivedfilerequest;

  if(file_exists( $file_path)){
echo 'The file exists';       
 $size = filesize($file_path);    
   echo $size; //Its working perfectly fine till here. 

exit;

}

但接下来我该怎么办才能真正下载此文件。我看了一些教程,然后他们使用header("Location: ".$file_path);。但那不适合我。这个头函数实际上做了什么,实际下载这个文件的代码应该是什么?

2 个答案:

答案 0 :(得分:1)

如果您正在尝试这样做,可以使用PHP的readfile(http://php.net/manual/en/function.readfile.php)强制下载文件。该页面上有一个示例显示如何下载图像。
PHP标头函数将原始HTTP标头发送到客户端。位置标头通常用于将客户端重定向到PHP中的新页面。

答案 1 :(得分:1)

请参考此URL,用于下载文件

http://php.net/manual/en/function.readfile.php