الان لاراول کار میکنم ولی هنوز سایتم همونه https://Rp76.ir
۴ قانون اعتبارسنجی لاراول برای تصاویر و عکس ها
فریمورک محبوب لاراول توی همه زمینه ها راهی رو جلو روی ما قرار داده که کار مارو ساده تر کرده امروز میخوایم چهار تا از اعتبارسنجی های لاراول رو برای فایل های تصویری بررسی کنیم!
image
بدون شک ساده ترین اعتبارسنجی برای تصویر image هست.
public function rules()
{
return [
'uploaded_photo' => 'image',
];
}
فایل تحت تأیید باید یک تصویر (jpeg، png، bmp، gif، یا svg) باشد.
mimes
اگر پسوند هایی که بالا گفته شد برای شما زیاد هست میتونید به صورت خاصی اون هارو محدود کنید
public function rules()
{
return [
'photo' => 'mimes:jpeg,png',
];
}
size
زمانی که یک رشته رو با size مورد بررسی قرار میدید طول رشته رو بررسی میکنه ولی اگر فایل اپلود شده باشه بر اساس حجم فایل رو مورد بررسی قرار میده.
public function rules()
{
return [
'photo' => 'image|size:۱۰۲۴', // ۱ MB
];
}
dimensions
اعتبار سنجی دقیق تری هم وجود دارد که میتونید حداقل/حداکثر عرض/ارتفاع تصویر را محدود کنید.
public function rules()
{
return [
'photo' => 'dimensions:min_width=۱۰۰,min_height=۱۰۰,max_width=۱۰۰۰,max_height=۱۰۰۰',
];
}
نه تنها این، شما می توانید نسبتی مانند ۳/۲ را مشخص کنید که ۶۰۰×۴۰۰ و ۳۰۰×۲۰۰ و غیره را پوشش می دهد:
public function rules()
{
return [
'photo' => 'dimensions:ratio=۳/۲',
];
}
در نهایت، حتی میتوانید عرض+ارتفاع+نسبت را ترکیب کنید که یکم پیچیدهتر میشه
use Illuminate\Validation\Rule;
Validator::make($data, [
'avatar' => [
'required',
Rule::dimensions()->maxWidth(۱۰۰۰)->ratio(۳/۲),
],
]);
امیدوارم که آموزنده بوده باشه.
مطلبی دیگر از این انتشارات
آشنایی با دستیارهای لاراول! - helper functions
مطلبی دیگر از این انتشارات
کار کردن با فایلها در فریمورک لاراول
مطلبی دیگر از این انتشارات
نحوه فارسی سازی slug در لاراول با پکیج cviebrock/eloquent-sluggable