yii中的文件下载显示文件不存在

时间:2014-03-24 06:51:34

标签: php pdf csv yii

我正在尝试在Yii中编写脚本来下载文件。
查看文件为
echo CHtml::link('Major Oilseeds: World Supply and Distribution.','downloadpdf', array('class'=>'btn btn-darkorange'));

,控制器代码为
$path = Yii::app()->request->hostInfo . Yii::app()->request->baseURL . '/download/Major_Oilseeds.csv'; echo $path; if(file_exists($path)){ Yii::app()->getRequest()->sendFile( 'Major_Oilseeds.csv' , file_get_contents($path) ); } else{ echo '<br>File not found'; }
代码echo $path将位置显示为
http://localhost/projectv2/download/Major_Oilseeds.csv
,下载文件夹包含名为“Major_Oilseeds.csv”的文件,但其始终显示“找不到文件”错误。有人帮我解决这个问题。我也试过了代码
$path = Yii::app()->request->hostInfo . Yii::app()->request->baseURL . '/download/Major_Oilseeds.csv'; // $filename = 'Major_Oilseeds.csv'; header('Content-Disposition: attachment; charset=UTF-8; filename="'.$path.'"'); $utf8_content = mb_convert_encoding($content, "SJIS", "UTF-8"); echo $utf8_content; Yii::app()->end(); return;

但是它也没有用: - (

1 个答案:

答案 0 :(得分:0)

file_exists只能用于本地文件。在您的情况下,您尝试使用带有URL的file_exists。

您可以在此处找到解决方法:http://uk1.php.net/file_exists(请在此页面中搜索“http”)