0

1

This my data that I want to store my pdf files in my public folders. Anyone can give me any idea?

I tried to foreach the data to get that file but it seems not working in my end. Anyone can help me?

1
  • Show us your code. Commented Feb 10, 2023 at 19:51

1 Answer 1

0

To store files in your public folder you can use the public disk that's included in your application's filesystems configuration file, the default config will store files in storage/app/public.

To make these files accessible from the web though (which I'm assuming is what you want) you need to create a symbolic link from public/storage to storage/app/public.

To do that just run:

php artisan storage:link

Once you've done this you can use Laravel's storage facade to interact with the files in your public folder to save, retrieve and download them.

Store

use Illuminate\Support\Facades\Storage;
 
Storage::put('file.jpg', $contents);

Download

return Storage::download('file.jpg');
 
return Storage::download('file.jpg', $name, $headers);

Retrieve

$contents = Storage::get('file.jpg');

If you need to store user uploaded files to your public storage, you can do it like this:

  $path = $request->file('yourUploadedPdf')->store('yourPdfsFolder');

Laravel's store method will generate a unique ID for the filename and the extension will be determined by the MIME type of the uploaded file. The store method also returns the path, including the generated filename, so you can store it in your DB if needed.

If you need to specify the filename then you can do this:

$path = $request->file('pdf')->storeAs(
    'yourPdfsFolder', 'yourPdfFileName'
);

Just a note, I'm assuming you'll be having public as your default disk, if not, then you'll need to specify the disk you're using in these method / Storage facade calls.

And a further note, when using the public disk, everything - by default - gets stored under storage/app/public so anytime you're defining a folder to store your uploaded PDFs under, it'll be storage/app/public/yourFolder.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.