Как устранить ошибку «SplFileInfo: getSize ()» в laravel 6

Я пытаюсь обновить изображение профиля пользователя. Но каждый раз и каждый раз я получаю ошибку вроде -

RuntimeException SplFileInfo :: getSize (): stat не удалось для / tmp / php8uXhSg

всякий раз, когда я выполняю dd () непосредственно перед методом save (), все в порядке. Но при сохранении записи выдает ошибку.

Ниже приведен код моего контроллера -

UserController.php

public function update(UserRequest $request, $slug) {

   if($request->has('profile')) {
      $profile = $request->profile;
      $extension = $profile->getClientOriginalExtension();
      $profile_name = auth()->user()->username.time().'.'.$extension;
      $path = public_path('storage/uploads/avatars');
      $profile->move($path, $profile_name);

      auth()->user()->profile = $profile_name;
   }
   auth()->user()->save();

   return back()->with(['mesg', 'Successfully Uploaded.']);
}

person Shivam Verma    schedule 20.09.2019    source источник


Ответы (2)


У меня тоже была такая же проблема некоторое время назад, я проверил upload_max_filesize / post_max_size, и проблем быть не должно, но проблема сохраняется. Затем я снова проверил phpinfo, чтобы убедиться, и попытался заменить метод сохранения на create, и когда я снова обновился, ошибка исчезла, и я возвращаю его обратно в метод сохранения, и он по-прежнему работает плавно. Я до сих пор не знаю почему

person good112233    schedule 24.09.2019

У меня такая же проблема, загрузка файла размером 9 КБ в WAMP, PHP 7.3.5 и Laravel 6

Я думаю, что проблема не связана с Laravel, а, возможно, с PHP / WAMP. Изменение upload_max_filesize / post_max_size (что привело к принудительному перезапуску PHP) устранило проблему.

person Wai Hoong Foong    schedule 30.09.2019
comment
но в моем случае после исправления upload_max_filesize / post_max_size и перезапуска PHP он не работает. Выкидываю такую ​​же проблему. Когда я использовал ini_get (post_max_size), он показывает старое значение (2 МБ) вместо нового. - person Shivam Verma; 01.10.2019