2016-05-10 801 views
0

你好,我收到以下錯誤,當我不選擇任何圖像到輸入字段:Call to a member function getClientOriginalExtension() on nulllaravel上傳圖片getClientOriginalExtension()上的空

如何避免這種情況,以及如何檢查輸入文件字段是空的,所以我不會遇到這個錯誤與下面的代碼?

$imageName = rand(11111, 99999) . '.' . $request->file('image')->getClientOriginalExtension(); 
$destinationPath = 'events'; 
$upload_success = $request->file('image')->move($destinationPath, $imageName); 

回答

0

你應該首先檢查該請求有你要處理的文件,使用hasFile()方法:

if ($request->hasFile('image')) { 
    $imageName = rand(11111, 99999) . '.' . $request->file('image')->getClientOriginalExtension(); 
    $destinationPath = 'events'; 
    $upload_success = $request->file('image')->move($destinationPath, $imageName); 
} 

見Laravel文檔中關於handling uploaded files