درس دوم آموزش لاراول
توی پوشه اصلی لاراول یک ÙØ§ÛŒÙ„ به نام env. وجود دارد Ú©Ù‡ Ù…ÛŒ توانید تنظیمات برنامه تان Ùˆ دیتابیس پروژه را در اینجا تعیین کنید :
APP_ENV=local
APP_DEBUG=true
APP_KEY=zGKCjTPbzET3WiHhKCxSpTBNCuUVWWLc
DB_HOST=localhost
DB_DATABASE=learninglaravel
DB_USERNAME=root
DB_PASSWORD=secret
به طور مثال اگر DEBUG_APP را روی true ست کنید خطاهای برنامه نویسی در هنگام کدنویسی برایتان قابل مشاهده خواهد بود Ùˆ مناسب برای ØØ§Ù„ت development هست Ùˆ در هنگام آپلود سایت روی هاست آن را fasle قرار دهید.
بهتره مقدار KEY_APP را هم با تایپ دستور زیر در ترمینال تغییر دهیم:
php artisan key:generate
سایر تنظیمات رو هم میتونید در پوشه config در ÙØ§ÛŒÙ„ مورد نظرش اعمال کنید. به طور مثال Ù…ÛŒ توانید در ÙØ§ÛŒÙ„ app.php مقدار timezone رو به Tehran/Asia تغییر دهید.
شما Ù…ÛŒ توانید داخل ÙØ§ÛŒÙ„ app.php در پوشه config تنظیمات برنامه را اعمال کنید. تنظیمات به صورت یک Ø¬ÙØª کلید/مقدار هستند. بعضی از آیتم ها مقدار خودشان را ا توسط تابع Ú©Ù…Ú©ÛŒ env از ÙØ§ÛŒÙ„ .env واقع در دابرکتوری root پروژه Ú©Ù‡ در پست قبلی ØªÙˆØ¶ÛŒØ Ø¯Ø§Ø¯Ù… Ù…ÛŒ گیرند به طور مثال:
'debug' => env('APP_DEBUG'),
'key' => env('APP_KEY', 'SomeRandomString'),
debug Ùˆ key مقدار خودش رو از ÙØ§ÛŒÙ„ .env Ù…ÛŒ گیرند در صورتی Ú©Ù‡ در ÙØ§ÛŒÙ„ .env برایشان مقداری ست نکرده باشیم Ù…ÛŒ توانیم به تابع env ()پارامتر دومی بدهیم Ú©Ù‡ نشانگر مقدار آن هست. در مثال باال key به این صورت است Ùˆ اگر در ÙØ§ÛŒÙ„ .env آن را ØØ°Ù کنیم از این مقدار پیش ÙØ±Ø¶ Ø§Ø³ØªÙØ§Ø¯Ù‡ خواهد کرد.
در زیر ØªÙˆØ¶ÛŒØ Ù…Ø®ØªØµØ±ÛŒ برای هر آیتم آن میدهم:
Debug:
اگر مقدار آن را true ست کنید برنامه در مد development خواهد بود Ùˆ خطاهای برنامه نشان داده Ù…ÛŒ شود Ùˆ اگر false باشد در مد production Ù…ÛŒ باشد Ùˆ مناسب برای publish Ùˆ Ø§Ø³ØªÙØ§Ø¯Ù‡ نهایی برنامه هست.
Url:
آدرس url پروژه را در اینجا ست میکنیم مثال http://localhost/laravel/public
Timezone:
موقعیت زمانی را مشخص می کنیم که برای مثال در کشور ایران Asia/Tehran ست می کنیم.
:Locale
در مسیر lang/resources Ù…ÛŒ توانیم یک پوشه دیگر به نام fa ایجاد کرده تا در آن پیغام ها Ùˆ متون ÙØ§Ø±Ø³ÛŒ را تایپ کنیم تا در برنامه از آنها Ø§Ø³ØªÙØ§Ø¯Ù‡ کنیم. به طور مثال یک کاربرد آن در ÙØ§Ø±Ø³ÛŒ سازی پیغام های اعتبارسنجی ÙØ±Ù… ها Ù…ÛŒ باشد. مقدار این آیتم را faÚ©Ù‡ همنام آن پوشه Ú©Ù‡ ایجاد کردیم ست میکنیم.
locale_fallback:
در صورتی Ú©Ù‡ localeموردنظر برای آن رشته موجود نبود از این locale Ø§Ø³ØªÙØ§Ø¯Ù‡ شود.
Key:
کلید برنامه Ú©Ù‡ یک رشته تصادÙÛŒ هست Ùˆ در رمزنگاری های برنامه توسط لاراول مورد Ø§Ø³ØªÙØ§Ø¯Ù‡ قرار Ù…ÛŒ گیرد. Ù†ØÙˆÙ‡ ست کردن آن را در پست قبلی ØªÙˆØ¶ÛŒØ Ø¯Ø§Ø¯Ù….
سایر موارد را در جای مناسب خودش ØªÙˆØ¶ÛŒØ Ø®ÙˆØ§Ù‡Ù… داد.
لاراول Ûµ به طور پیش ÙØ±Ø¶ از دایرکتوری app ØªØØª namespace ای به نام App Ø§Ø³ØªÙØ§Ø¯Ù‡ میکند Ú©Ù‡ هنگام ایجاد کلاس هایتان از آن Ø§Ø³ØªÙØ§Ø¯Ù‡ میکنید Ú©Ù‡ شما Ù…ÛŒ توانید با Ø§Ø³ØªÙØ§Ø¯Ù‡ از دستور زیر Ùˆ تایپ در ترمینال آن ÙØ¶Ø§ÛŒ نام را به نام دلخواهتان تغییر دهید مثلا در مثال زیر من آن را به Home تغییر دادم:
php artisan app:name Home
بعد از اجرای این دستور لاراول به طور خودکار تمام namespace های Ø§Ø³ØªÙØ§Ø¯Ù‡ شده در کلاس هایتان را به نام جدید تغییر خواهد داد.
دسترسی به مقادیر پیکر بندی:
با Ø§Ø³ØªÙØ§Ø¯Ù‡ از کلاس Config هم Ù…ÛŒ توانید مقادیر config رو با Ø§Ø³ØªÙØ§Ø¯Ù‡ از متد get بدست بیارید یا مقدار جدیدی را با Ø§Ø³ØªÙØ§Ø¯Ù‡ از متد set ست کنید به مثال های زیر توجه کنید:
$value = Config::get('app.timezone');
Config::set('app.timezone', 'Asia/Tehran');
همچنین Ù…ÛŒ توانید از تابع Ú©Ù…Ú©ÛŒ config هم Ø§Ø³ØªÙØ§Ø¯Ù‡ کنید :
$value = config('app.timezone');