1
我試圖上傳文件,但它總是在我的控制器中返回null。下面是我得到的錯誤:Laravel 5.2上傳文件始終爲空
FatalThrowableError in FileController.php line 25:
Fatal error: Call to a member function getClientOriginalExtension() on null
表
<form enctype="multipart/form-data" method="post" action="{{route('upload')}}">
<label for="file_upload">Upload file</label>
<input id="file_upload" type="file" name="file">
<input type="submit" value="Upload">
</form>
路線(不調用任何中間件)
Route::post('file/upload', [
'as' => 'upload',
'uses' => '[email protected]',
]);
控制器
public function handleUpload(Request $request)
{
$dir = sys_get_temp_dir() . DIRECTORY_SEPARATOR . 'adp';
if (!file_exists($dir)) mkdir($dir);
$extensions = AppPlatform::lists('package_extension')->toArray();
$extension = $request->file('file')->getClientOriginalExtension(); // this line throws the nullreference exception
...
}
我可能忽略了一些非常明顯的東西,但似乎無法找到問題出在哪裏。
編輯
當我看到在Chrome的開發者工具,我可以看到該文件在POST請求正確發送的請求。
------WebKitFormBoundaryTLB02G6sLMEE2fMM
Content-Disposition: form-data; name="file"; filename="app-release.apk"
Content-Type: application/octet-stream
------WebKitFormBoundaryTLB02G6sLMEE2fMM--
嘗試在'handleUpload()'中轉儲'$ _FILES'。什麼是輸出? –
你有什麼東西在dd($ request-> file('file'))? – sunilwananje
@VaibhavrajRoham返回一個空數組 – Fester