【发布时间】:2018-01-08 22:08:25
【问题描述】:
我在 Laravel 5 中有我的 APIrest。 我正在尝试上传文件。 这是我的控制器:
public function makeFile(Request $request)
{
if(isset($request->files) && is_array($request->files)) {
$fileArray=array();
foreach($request->files as $key=>$fileEntity) {
$file= new File();
$file->file=$fileEntity['file'];
$file->shipment_id=$fileEntity['shipment_id'];
$file->user_id=$fileEntity['user_id'];
$file->date=date('Y,m,d,G,i,s');
$file->fileName=$fileEntity['fileName'];
$file->fileType=$fileEntity['fileType'];
$file->status=$fileEntity['status'];
$file->save();
array_push($fileArray, $file);
}
// return response()->json($fileArray);
}
(line 132 the one of the error) return response()->json($fileArray);
}
在前端(angularjs)中,当我上传文件时会引发此错误
ShipmentController.php 第 132 行中的 ErrorException:未定义变量: 文件数组
为什么会这样?
【问题讨论】:
-
您收到此错误是因为
if(isset($request->files) && is_array($request->files))的计算结果为 false,因此您的变量永远不会被初始化。
标签: php angularjs arrays laravel-5