تکنولوژی نوین اینترنتی
در لاراول، برای استفاده از متغیرهای سراسری در تمام ویوها (global variables in views)، چند روش مختلف وجود داره که میتونی بسته به نیازت انتخاب کنی. این متغیرها میتونن اطلاعاتی مثل تنظیمات سایت، اطلاعات کاربر، یا دادههای ثابت مثل دستهبندیها باشن.
View Composerها بهت اجازه میدن که هنگام رندر شدن ویو، دادههایی به اون ارسال کنی—چه برای یک ویو خاص، چه برای همه ویوها.
config/app.php
در آرایهی providers
:
در app/Providers/ViewServiceProvider.php
:
💡 حالا در هر ویویی میتونی بنویسی:
اگر بخوای همهی کنترلرها یک متغیر خاص رو به ویو بفرستن:
در Middleware بنویس:
و در Kernel.php
ثبتش کن داخل $middleware
.
برای اطلاعاتی مثل تنظیمات سایت:
کامپوننتها میتونن دادههایی رو خودشون از مدلها بگیرن و بدون نیاز به ارسال از کنترلر، به صورت خودکار داده رو آماده کنن.
داخل Footer.php
(کامپوننت):
روش | کاربرد | مناسب برای |
---|---|---|
View::share() | ارسال داده سراسری | مقادیر ثابت (مثل نام سایت) |
View::composer('*', fn...) | دادههای داینامیک | همه ویوها |
Middleware | تزریق داده در هر درخواست | زمان یا تنظیمات ساده |
Blade Components | ارسال داده داخلی | بخشهایی مثل هدر و فوتر |
اگه خواستی من برات یه فایل ServiceProvider آماده کنم با تنظیمات دلخواهت (مثلاً نام سایت، تنظیمات فوتر، دستهبندیها)، فقط بگو چی توش باشه.