Laravel 上傳文件報找不到臨時文件的問題

最近在嘗試用lavarel做上傳文件,但遇到了奇怪的問題,下面是代碼:

if(Input::hasFile("audio"))
{
	$file = Input::file("audio");


	$fileName = $this->guid();//
	$extensionName = $file->guessExtension();
	$fullFileName = $fileName . "." . $file->guessExtension();
	Log::info("full file name: " . $fullFileName);
	$path = $this->GetFileFolder();

	$audioSuccess = Input::file("audio")->move($path, $fullFileName);
	
	$audioFile = new FileInfo();
	$audioFile->Id = $this->guid();
	$audioFile->FileName = $fileName;
	$audioFile->FilePath = $path;
	$audioFile->ExtensionName = $file->guessExtension();
	$audioFile->save();
	
}
提交後laravel提示臨時文件找不到,不明所以,明明文件已經傳上來了,居然還提示找不到臨時文件,如果是複製到的目標文件夾找不到我能理解,畢竟涉及到什麼絕對路徑相對路徑的問題,但找不到臨時文件我不能理解,也不能接受!!!!


自己研究了半天,不明所以,百度了一下,沒有結果,google了一下,再次證明google還被牆着。咋搞,只好曲線救國,bing英文版,畢竟是本土的還是能搜到點東西。


問題出現在

$audioFile->ExtensionName = $file->guessExtension();
這一句,因爲前面已經通過
Input::file("audio")->move()
已經把文件移走了,所以再通過$file獲取任何文件相關的信息,都無法再找到文件,所以提示找不到臨時文件。

解決辦法也必將簡單,先找個臨時變量把想要使用的文件屬性存起來,後面在用就好了。







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章