Laravel 5.3 Storage::put creates a directory with the file name
you need to provide the file contents in the second argument not file object, try this:
Storage::disk('local')->put($newFilename, file_get_contents($file));
This happened because you specify the directory to store as filename. The newFilename
, should be the directory name such as 'images'. Refer to this line
Storage::disk('local')->put($newFilename, $file);
So you could change this to
Storage::disk('local')->putFile('images', $file);
Then you will get the path stored at storage/app/images/234234234.jpg
Storage::disk('local')->putFileAs('', $file, $filenewname);