laravel - 为什么在 null 上给我回调用成员函数 getClientOriginalName()?
问题描述
public function importProd(Request $request) {
$uploadedFile = $request->file('file');
$filename = var_dump(time().$uploadedFile->getClientOriginalName());
Storage::disk('local')->putFileAs(
'/',
$uploadedFile,
$filename
);
Excel::import(new ProductImport, storage_path('app/'.$filename));
Storage::delete($filename);
return back();
}
为什么在 null 上给我回调用成员函数 getClientOriginalName() ?变量定义不明确?
解决方案
您应该始终进行空检查,像这样修改您的功能
public function importProd(Request $request) {
if($request->hasFile('file')){
$uploadedFile = $request->file('file');
$filename = var_dump(time().$uploadedFile->getClientOriginalName());
Storage::disk('local')->putFileAs(
'/',
$uploadedFile,
$filename
);
Excel::import(new ProductImport, storage_path('app/'.$filename));
Storage::delete($filename);
return back();
}
}
推荐阅读
- javascript - 为什么每个项目都被推送到所有数组?
- c# - Unity Tilemap 图层顺序排序【瓷砖前后的玩家】由 4 个松散瓷砖组成的树精灵
- php - 在对 PHP 脚本的 AJAX 调用中使用 DELETE 方法时是否可以传递参数?
- javascript - Jqueryvalidate 的 .validate() 方法不在 ASP Core 中执行
- sql - can = 后跟 sql 中的变量
- python - Web Scrape Vanguard 投资账户(登录)
- reactjs - React Redux - Cannot set property 'quantity' of undefined
- c# - app.UseRouting() 和 app.UseEndPoints() 有什么区别?
- aws-lambda - 为 Alexa Amazon 创建示例音频应用程序播放器
- ios - 我应该选择 ViewController 还是 TableViewController?