Laravel иногда при сохранении генерирует папку с именем изображения - PullRequest
0 голосов
/ 01 августа 2020

Я сохраняю изображения в папке хранения laravel, и в основном весь мой код - это


      $image = $request->file('image');
      $ext = $image->getClientOriginalExtension();
    
      $name = Hash::make(Carbon::now()) . '.' .$ext;
      $image->storeAs('public/images/tmp', $name);

, которые правильно сохраняют изображение, например: https://i.stack.imgur.com/LJbMU.png

but sometimes it saves it inside a folder that has the same name: https://i.stack.imgur.com/Y5ubR.png

как этого избежать?

Ответы [ 2 ]

0 голосов
/ 01 августа 2020

$ image = $ request-> file ('изображение'); $ ext = $ image-> getClientOriginalExtension ();

  $name = str_replace('/',"",Hash::make(Carbon::now())) . '.' .$ext;
  $image->storeAs('public/images/tmp/', $name);

Однажды со мной случилось добавить конечный прямой sla sh в конце if tmp и использовать str_replace для замены всех прямых sla sh из имя

0 голосов
/ 01 августа 2020

Ваш Ha sh генерирует символ /, который создает папку. Я бы рекомендовал использовать uuid вместо Ha sh:

      $image = $request->file('image');
      $ext = $image->getClientOriginalExtension();
    
      $name = uniqid() . '.' .$ext;
      $image->storeAs('public/images/tmp', $name);
...