簡體   English   中英

在codeigniter中從服務器下載文件

[英]downloading a file from server in codeigniter

我正在嘗試從服務器下載文件。

這是我的控制器代碼。

public function download($id)
{
    $this->load->helper('url');
    $base_url = $this->config->item('base_url');
    $base_path = $this->config->item('base_path');
    $this->load->helper('download');

    $data = file_get_contents( $base_path.'/uploads/'.$id);
    $name = $id;
    force_download($name, $data);
}

但是,出現錯誤:

file_get_contents(path/filename): failed to open stream: No such file or directory.

我該如何解決這個問題?

問題出在路徑本身上。 實際上,它不使用文件名,它們之間沒有空格。 對於前。 現在使用文件名xyz可以正常工作,但不能使用文件名ex正常工作。 嘗試xyz。 我認為是因為名稱之間存在空格。 我怎么解決這個問題?

請改用curl。 這可能是您的答案。

http://www.technologyworkshops.net/php/how-to-download-and-save-a-file-to-local-path-using-curl-t132.html

在您的助手中添加功能,效果很好。

您可以使用魔法常數__ DIR__的絕對路徑

http://php.net/manual/zh/language.constants.predefined.php

$data = file_get_contents( __ DIR__.'/../uploads/'.$id);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM