Laravel File Uploads: Drivers and Disks এবং Amazon S3 ব্যাখ্যা ও ব্যবহার (উদাহরণসহ) | Part 22
এই লেখায় Laravel framework এর উন্নত ফাইল আপলোড সিস্টেম সম্পর্কে আলোচনা করা হয়েছে। ড্রাইভার, ডিস্ক, Amazon S3 ইন্টিগ্রেশন সহ বিষয়গুলো বিস্তারিতভাবে তুলে ধরা হয়েছে।
( Laravel File Uploads Advanced: Drivers and Disks, Example of Amazon S3 )
আজ আমি আপনাকে Laravel Framework এর File Uploading System এর উন্নত বৈশিষ্ট্য সমূহ সম্পর্কে জানাব। Laravel এ ফাইল আপলোড করা খুবই সহজ। তবে এর কিছু উন্নত বৈশিষ্ট্য আছে যা আপনার আপলোড সিস্টেমকে শক্তিশালী করে তুলবে।
ড্রাইভার এবং ডিস্ক
Laravel এ ফাইল সিস্টেমকে স্বাচ্ছন্দ্য করার জন্য “ড্রাইভার” এবং “ডিস্ক” ধারণাটি রয়েছে।
ড্রাইভার হল ফাইল সঞ্চয়ের জন্য ব্যবহৃত পদ্ধতি। যেমন: local, S3, database ইত্যাদি।
আর ডিস্ক হল একটি নির্দিষ্ট ড্রাইভারের জন্য একটি স্টোরেজ লোকেশন।
একটি উদাহরণ দেখা যাক।
'disks' => [
'local' => [
'driver' => 'local',
'root' => storage_path('app'),
], 's3' => [
'driver' => 's3',
'key' => 'your-key',
'secret' => 'your-secret',
'region' => 'your-region',
'bucket' => 'your-bucket',
],],
এখানে local
এবং s3
হল ডিস্ক। local
ডিস্ক local
ড্রাইভার ব্যবহার করে এবং s3
ডিস্ক Amazon S3 ড্রাইভার ব্যবহার করে।
প্রতিটি ডিস্কের জন্য আলাদা সেটিংস থাকতে পারে। এটি আপনাকে একাধিক স্টোরেজ লোকেশন ব্যবহার করতে দেয়।
উদাহরণ: Amazon S3
আসুন একটি উদাহরণ দেখা যাক যেখানে আমরা Amazon S3 ব্যবহার করে ফাইল আপলোড করব।
প্রথমে .env
ফাইলে S3 এর তথ্য সেট করা লাগবে:
AWS_ACCESS_KEY_ID=your-key
AWS_SECRET_ACCESS_KEY=your-secret
AWS_DEFAULT_REGION=your-region
AWS_BUCKET=your-bucket
পরে config/filesystems.php
এ ডিস্ক কনফিগার করতে হবে:
'disks' => [
's3' => [
'driver' => 's3',
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION'),
'bucket' => env('AWS_BUCKET'),
],],
এখন কোন কন্ট্রোলার অথবা মডেলের মধ্যে ফাইল আপলোড করতে পারবেন:
$path = $request->file('photo')->store('images', 's3');
এটি ছবিটিকে images
ফোল্ডারে Amazon S3 এ আপলোড করবে।
এভাবে খুব সহজেই Amazon S3 ব্যবহার করে ফাইল ম্যানেজ করা যায়!
সারাংশ
- Laravel এ
driver
এবংdisk
ব্যবহার করে ফাইল সিস্টেমকে স্বাচ্ছন্দ্যময় করা হয়। Driver
হল স্টোরেজ পদ্ধতি যেমন: Local, S3, Database ইত্যাদি।Disk
হল একটি নির্দিষ্টdriver
এর জন্য স্টোরেজ লোকেশন।- একাধিক
disk
ব্যবহার করে বিভিন্ন স্টোরেজ ব্যবহার করা যায়। - Amazon S3 সহজেই ইন্টিগ্রেট করা যায়।
আশা করি এই লেখাটি থেকে আপনি Laravel File Uploading সম্পর্কে ভালো ধারণা লাভ করেছেন। ধন্যবাদ!