استفاده از env یا config

سلام و درود فراوان 

سوالم این هست که ما باید از ثابت های توی فایل env به چه صورت استفاده کنیم؟

دوستان من متوجه نمیشم زمانی که یک ثابت رو به این صورت استفاده میکنم:

env('APP_NAME');

و بعد دستور:

php artisan config:cache

رو اجرا میکنم دیگه ثابت APP_NAME نمایش داده نمیشه!؟

اما وقتی ثابت هارو به این صورت استفاده میکنم :

config('app.name')

و بعد دستور:

php artisan config:cache

رو اجرا میکنم ثابت APP_NAME به درستی و بدون قابلیت تغییر که خیلی هم مناسب هست برای من نمایش داده میشه؟!

حالا سوالم اینجاست که در نهایت باید توی پروژه هام از کدوم روش استفاده کنم؟؟؟؟

و یه نکته دیگه خود لاراول داخل فایل های config از روش اولی(env) استفاده کرده و بعد از دستور: 

php artisan config:cache

چرا هیچ چیز خراب نمیشه و به درستی کار میده؟؟؟؟؟

برچسب ها:
پرسیده شده در: 2 سال قبل
آمار بازدید: 859
بیش از ۱ سال عضویت در روکسو بیش از ۱ سال عضویت در روکسو
0

سلام، بهترین راه حل برای استفاده از ثابت ها یا داده های استاتیک در لاراول، استفاده از تابع config هست. این تابع در واقع به عنوان یک لایه سطح دسترسی به فایل .env را کنترل کرده و در صورتیکه ثابت موردنظر وجود داشته باشد آن را نمایش می دهد.

دستور php artisan config:cache تمام موارد موجود در پوشه config لاراول را کش می کند و ارتباطی به ثابت ها ندارد. اما چون معمولا فایل های مربوط به کانفیگ را در این پوشه تعریف می کنیم به صورت خودکار آنها هم کش می شوند.

نتیجه گیری: تابع config برای استفاده از ثابت ها می باشد و چون مقدار درون این تابع (مثلا app.name) داخل پوشه config تعریف شده است، با دستور php artisan config:cache این مقادیر هم کش می شوند.

ارسال شده در: 2 سال قبل
masoudsalehi (1725)
بیش از ۲ سال عضویت در روکسو بیش از ۲ سال عضویت در روکسو دارای 1000 کارما دارای 1000 کارما نظرات دریافتی:‌ بیش از 50 نظرات دریافتی:‌ بیش از 50 دارای 25 پاسخ صحیح دارای 25 پاسخ صحیح ارسال کننده پاسخ با 25 رای ارسال کننده پاسخ با 25 رای
جهت ارسال پاسخ ابتدا عضو سایت شوید.