thinkphp实现当前页面点击下载文件实例
生活随笔
收集整理的這篇文章主要介紹了
thinkphp实现当前页面点击下载文件实例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
代碼實例
php控制器中代碼
public function downFile($path = ''){if(!$path) header("Location: /");download($path);}download文件下載函數代碼
function download($file_url,$new_name=''){ if(!isset($file_url)||trim($file_url)==''){ echo '500'; } if(!file_exists($file_url)){ //檢查文件是否存在 echo '404'; } $file_name=basename($file_url); $file_type=explode('.',$file_url); $file_type=$file_type[count($file_type)-1]; $file_name=trim($new_name=='')?$file_name:urlencode($new_name); $file_type=fopen($file_url,'r'); //打開文件 //輸入文件標簽 header("Content-type: application/octet-stream"); header("Accept-Ranges: bytes"); header("Accept-Length: ".filesize($file_url)); header("Content-Disposition: attachment; filename=".$file_name); //輸出文件內容 echo fread($file_type,filesize($file_url)); fclose($file_type); }html代碼
<iframe id="iframe" src="" style="display: none;"></iframe> <script> $(function(){$('.downLoad').click(function(){var path = $(this).attr('path');$('#iframe').attr('src',"php文件路徑?path="+path);})}) </script>把上面的代碼,分別放到你的程序中執行就可以了。
常見問題匯總:
1.chorm內核瀏覽器有下載安全機制,需要https的鏈接才可下載,請檢查此類情況導致的無法下載問題
2.部分瀏覽器會屏蔽下載鏈接,請先確保瀏覽器是否有此類的限制。
總結
以上是生活随笔為你收集整理的thinkphp实现当前页面点击下载文件实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WAMP本地环境升级php版本操作步骤(
- 下一篇: kibana 查看有多少索引库_干货 |