rakibtg
rakibtg

Reputation: 5921

Move an uploaded file in Laravel 5.3

I need to move uploaded images from a temporary location.

The path of an uploaded temp image is as follows:

/storage/tmp/posts/14916460012147460153.jpg

To move the image i am using Storage::move() facade.

  $__fn = basename( $tmpImage );
  Storage::move( 
    storage_path( 'app' ) . '/public/tmp/posts/' . $__fn,
    storage_path( 'app' ) . '/public/images/'.Auth::id().'/posts/' . $__fn
  );

But it throws an error:

FileNotFoundException in Filesystem.php line 385:

File not found at path: D:\Projects\expo\storage\app/public/tmp/posts/14916460012147460153.jpg

Though the file exists and can be found via browser at localhost:8000/storage/tmp/posts/14916460012147460153.jpg

I read the doc of laravel filesystem, but cant understand what is missing here.

Upvotes: 0

Views: 3455

Answers (1)

Ismail RBOUH
Ismail RBOUH

Reputation: 10470

Please try to use the disk instance instead of the Storage facade and absolute paths:

Storage::disk('public')->move(
    'tmp/posts/' . $__fn, 
    'images/'. Auth::id() . '/posts/' . $__fn);

Upvotes: 1

Related Questions