در Laravel، دایرکتیو @unless در سیستم قالبسازی Blade یک جایگزین برای شرط if است، اما با عملکردی معکوس. به عبارتی، زمانی که شرطی false باشد، کد داخل بلاک @unless اجرا میشود. این دایرکتیو زمانی استفاده میشود که بخواهید کدی را تنها در صورتی اجرا کنید که یک شرط برقرار نباشد.
نحوه استفاده از دایرکتیو @unless
ساختار دایرکتیو @unless به شکل زیر است:
۱ ۲ ۳ |
@unless (شرط) // کدهایی که در صورت false بودن شرط اجرا میشوند @endunless |
مثال:
فرض کنید میخواهید متنی را تنها زمانی نمایش دهید که کاربری احراز هویت نشده باشد. به جای استفاده از @if (!Auth::check())، میتوانید از دایرکتیو @unless استفاده کنید:
۱ ۲ ۳ ۴ ۵ |
@unless (Auth::check()) شما وارد سیستم نشدهاید. @endunless |
در اینجا اگر کاربر احراز هویت نشده باشد (یعنی Auth::check() مقدار false برگرداند)، پیغام “شما وارد سیستم نشدهاید” نمایش داده میشود.
معادل با if:
مثال بالا معادل با این شرط if است:
۱ ۲ ۳ ۴ ۵ |
@if (!Auth::check()) شما وارد سیستم نشدهاید. @endif |
جمعبندی:
@unless زمانی استفاده میشود که بخواهید شرطی را به صورت معکوس بررسی کنید.
این دایرکتیو کدها را تنها زمانی اجرا میکند که شرط false باشد، و خوانایی کد را در مواردی که نیاز به بررسی منفی دارید بهبود میدهد.
0 نظر