當(dāng)我嘗試在控制器內(nèi)部執(zhí)行循環(huán)時(shí),出現(xiàn)錯(cuò)誤Invalid argument supplied for foreach(),但我真的不知道為什么。我有一個(gè)form應(yīng)該可以上傳多個(gè)文件的地方這是我到目前為止所得到的:use App\SingleApplication;use App\SingleApplicationFile;$application = SingleApplication::create([ 'email' => request()->email, 'name' => request()->name, ...// more fields]);$allowedfileExtension = ['pdf', 'jpg', 'png', 'docx'];$files = request()->has('attachment');if ($files) { foreach ($files as $file) { $filename = $file->getClientOriginalName(); $extension = $file->getClientOriginalExtension(); $filesize = $file->getSize(); $check = in_array($extension, $allowedfileExtension); if ($check) { foreach ($file as $att) { $filename = Storage::disk('local')->put('attachments', request()->file($att)); SingleApplicationFile::create([ 'files_id' => $application->id, 'single_application_id' => $application->id, 'attachment' => $filename, 'attachment_name' => $extension, 'attachment_size' => $filesize, ]); } } }}那么,我在這里做錯(cuò)了什么?
1 回答

瀟瀟雨雨
TA貢獻(xiàn)1833條經(jīng)驗(yàn) 獲得超4個(gè)贊
這是一個(gè)布爾值
$files = request()->hasFile('attachment'); // return if has file not array of files
你應(yīng)該得到文件
$files = request()->file('attachment'); // returns array of files
或者您可以將條件更改為
$hasfiles = request()->hasFile('attachment');
if ($hasfiles) {
$files = request()->file('attachment');
// your rest code
注意:文件檢查應(yīng)該使用 hasFile 來(lái)完成,因?yàn)槲募推渌侄问遣煌摹?/p>
- 1 回答
- 0 關(guān)注
- 208 瀏覽
添加回答
舉報(bào)
0/150
提交
取消