PHPファイルのダウンロード

高洛峰
リリース: 2016-10-20 15:07:54
オリジナル
1779 人が閲覧しました

完全なコード:

public function downloadFile(){
        $M = M($this->tableName);
        $map['id'] = I('fileId');
        $info = $M->where($map)->find();
        $filepath = '.'.$info['path'];
        if( !file_exists($filepath) ){
            echo '文件不存在!';
            exit;
        }
 
        //$M->where($map)->setInc('download');
        $file = fopen($filepath,"r"); // 打开文件
        // 输入文件标签
        Header("Content-type: application/octet-stream");
        Header("Accept-Ranges: bytes");
        Header("Accept-Length: ".filesize($filepath));
        Header("Content-Disposition: attachment; filename=" . $info['savename']);
        // 输出文件内容
        echo fread($file,filesize($filepath));
        fclose($file);
        exit;
}
ログイン後にコピー

上記のコードは thinkphp のメソッドです


$this->tableName はファイルを保存するためのデータテーブルです

fileId に基づいてデータベース応答ファイルを取得します

file_exists を使用して、ファイルが存在する場合、存在しない場合は、エラー メッセージが出力されます


fopen を通じてファイルを開きます

more Header メソッドがファイルを開く処理を処理し、ファイルは fread() メソッドを通じて出力されます。


関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート