TP框架下載功能


復制代碼
namespace Home\Controller;
use Think\Controller; use Org\Net\Http; class IndexController extends Controller { public function download(){
      //獲取文件的唯一id(這里可以將展示頁面的對應表的id保存在session里,然后使用download方法獲取該id) $file_id = session('id'); if( $file_id == 0 ){ $this -> error( '文件不存在' ); } $db_file = M( '表名' );
       //匿名組合數據 $condition [ 'file_id' ] = $file_id;
       //通過上面條件查找數據表文件路徑 $file_result = $db_file -> where( $condition )->field('file_path') -> find( ); if( empty( $file_result ) || ! file_exists( $file_result[ 'file_path' ] ) ){ $this -> error( '文件不存在' ); }
       //如果文件路徑是由多個東西組合而成(如時間戳,保存文件地址等),需要截取出文件名 $showname = $file_result[ 'show_name' ]; $ext_arr = explode( '.' , $file_path ); $showname .= '.'.$ext_arr[ count( $ext_arr ) -1 ]; $encoded_filename = urlencode( $showname ); $encoded_filename = str_replace( "+" , "%20" , $encoded_filename ); Http::download( $file_result[ 'file_path' ] , $showname ); } }
打賞

免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2021 CODEPRJ.COM