PHP下載APK文件(代碼如下)
/** * //這里不要隨便打印文字,否則會影響輸出的文件的 * (例如下載沒問題,但是apk安裝時候提醒解析安裝包錯誤) * @return array */ public function donwApkFile(){ //http://dc.lizhanqi.top/index/Apks/donwApkFile $path = "E:/素玄文件/app歷史版本/"; //$file_name = request()->param("filename"); $file_name = "素玄E.apk"; //下載文件名 //中文需要轉碼 $fileAdd = iconv('UTF-8', 'GB2312', $path . $file_name); //檢查文件是否存在 if (!file_exists($fileAdd) || !explode(".apks", $fileAdd) || !is_file($fileAdd)) { Config::set("default_return_type", "json"); $rersout = ['Msg' => '文件不存在', 'code' => 100, 'Data' => ""]; return $rersout; } else { //告訴瀏覽器這是一個文件流格式的文件(app) Header("Content-type: application/vnd.android.package-archive"); //用來告訴瀏覽器,文件是可以當做附件被下載,下載后的文件名稱為$file_name該變量的值。 header('Content-disposition: attachment; filename=' . iconv('UTF-8', 'GB2312', $file_name)); //文件名 header("Cache-Control: public"); header("Content-Description: File Transfer"); header("Content-Transfer-Encoding: binary"); //告訴瀏覽器,這是二進制文件 //這里會告訴請求方,文件大小 header('Content-Length: ' . filesize($fileAdd)); //告訴瀏覽器,文件大小 //讀取文件內容並直接輸出到瀏覽器 @readfile($fileAdd); exit (); } }