Эту логику я бы хотел иметь:
пользователь должен загрузить как минимум 2 разных файла. Он может загрузить более 2. Но следующая пара файлов должна быть сохранена в другой папке. Я не знаю, сколько файлов будет загружено. Но цель состоит в том, чтобы разбить каждую пару файлов на разные папки.
Мой код работает нормально, но создает папку # 1, сохраняет в ней 2 файла. Затем создает папку # 2 и сохраняет все следующие файлы в этой папке. Но в папке № 2 должно быть только 2 файла (как в папке № 1), следующая пара файлов должна быть сохранена в папке № 3 и т. Д., Но следующая папка не будет создана. Почему так? Мой код:
class UploadController extends Controller
{
private $folderId;
public function __construct()
{
$this->folderId = 1;
}
/**
* File Upload.
*
* @param Request $request
* @return
*/
public function store(Request $request)
{
$path = 'public/' . $this->folderId;
$files = Storage::files($path);
$filesSum = count($files);
if ($filesSum <= 1) {
$request->file('file')->storeAs($path, $request->file('file')->getClientOriginalName());
} else {
$path = 'public/' . ($this->folderId + 1) ;
$request->file('file')->storeAs($path, $request->file('file')->getClientOriginalName());
}
return redirect()->back()->with('message', 'File has been uploaded!');
}
}