ThinkPHP6檔案上傳與下載:實現檔案的管理與儲存
引言:
隨著網路的快速發展,檔案的上傳與下載成為了我們日常工作和生活中必不可少的功能之一。在ThinkPHP6框架中,我們可以透過簡單的程式碼實現檔案的上傳和下載,以方便的進行檔案的管理與儲存。本文將介紹如何在ThinkPHP6框架中實作檔案的上傳和下載功能,並提供對應的程式碼範例。
一、檔案上傳功能的實作
<form action="/upload" method="post" enctype="multipart/form-data"> <input type="file" name="file" /> <input type="submit" value="上传" /> </form>
public function upload() { $file = request()->file('file'); $savePath = './uploads/'; // 文件保存路径 // 移动文件到指定位置 $result = $file->move($savePath); if ($result) { // 文件移动成功 echo '文件上传成功'; } else { // 文件移动失败 echo '文件上传失败'; } }
public function upload() { if (request()->isPost()) { $file = request()->file('file'); $savePath = './uploads/'; // 文件保存路径 // 移动文件到指定位置 $result = $file->move($savePath); if ($result) { // 文件移动成功 echo '文件上传成功'; } else { // 文件移动失败 echo '文件上传失败'; } } return $this->fetch(); }
二、檔案下載功能的實作
<a href="/download?file=filename">下载文件</a>
public function download() { // 获取要下载的文件路径 $filePath = './uploads/' . input('file'); // 文件下载 if (file_exists($filePath)) { header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename=' . basename($filePath)); header('Content-Length: ' . filesize($filePath)); readfile($filePath); } else { echo '文件不存在'; } }
public function download() { $filePath = './uploads/' . input('file'); if (file_exists($filePath)) { header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename=' . basename($filePath)); header('Content-Length: ' . filesize($filePath)); readfile($filePath); } else { echo '文件不存在'; } }
結語:
透過以上的程式碼範例,我們可以看到,在ThinkPHP6框架中實作檔案的上傳和下載功能是非常簡單的。透過掌握這些知識,我們可以輕鬆實現文件的管理與存儲,並滿足用戶對文件上傳和下載的需求。希望本文能對大家在實現文件上傳和下載功能方面有所幫助。
以上是ThinkPHP6檔案上傳與下載:實現檔案的管理與存儲的詳細內容。更多資訊請關注PHP中文網其他相關文章!