laravel 框架的檔案上傳

2021-07-23 02:39:22 字數 1095 閱讀 1518

客戶端

提交到伺服器端.

方法:$file = input::file('myfile');

if($file -> isvalid()){

//檢驗一下上傳的檔案是否有效.

$clientname = $file -> getclientoriginalname();

$tmpname = $file ->getfilename(); // 快取在tmp資料夾中的檔名例如php8933.tmp 這種型別的.

$realpath = $file -> getrealpath();    //這個表示的是快取在tmp資料夾下的檔案的絕對路徑

//例如我的是: g:\xampp\tmp\php5a69.tmp

//這裡要注意,如果我使用接下來的move方法之後, getrealpath() 就找不到檔案的路徑了.因為檔案已經被移走了.

所以這裡道出了檔案上傳的原理,將檔案上傳的某個臨時目錄中,然後使用php的函式將檔案移動到指定的資料夾.

$entension = $file -> getclientoriginalextension(); //上傳檔案的字尾.

$mimetye = file -> getmimetype();//大家對mimetype應該不陌生了. 我得到的結果是 image/jpeg.

//這裡要注意一點,以前我們使用 mime_content_type() ,在php5.3 之後,開始使用 fileinfo 來獲取檔案的mime型別.所以要加入 php_fileinfo的php拓展.windows下是 php_fileinfo.dll,在php.ini檔案中將 extension=php_fileinfo.dll前面的分號去掉即可.當然要重啟伺服器.

最後我們使用

$path = $file -> move('storage/uploads');

如果你這樣寫的話,預設是會放置在 我們 public/storage/uploads/php79db.tmp  

利用日期和客戶端檔名結合 使用md5 演算法加密得到結果.不要忘記在後面加上檔案原始的拓展名.

好吧.開始本來想寫程式的,現在搞成這幅德行了..

best wishes.

Laravel框架 上傳大檔案設定

第一步 修改在php5下post檔案大小的限制 1.編修php.ini 找到 max execution time 30 這個是每個指令碼執行的最長時間,單位秒,修改為 max execution time 150 找到 max input time 60,這是每個指令碼可以消耗的時間,單位也是秒,...

初識Laravel框架

一 目錄簡介 包含應該用程式的核心 以後 就寫在這裡 裡面主要的是 http檔案 config 包含所有程式的配置檔案 database 包含了資料遷移和填充檔案 public 放一些公用的 js image css 檔案的 resources 包含了檢視一級原始的資源檔案 views 視 件 st...

框架 檔案上傳類

created by jetbrains phpstorm.user stu date 14 3 4 time 下午4 56 to change this template use file settings file templates.final class upload return iamg...