آموزش نصب سریع Laravel 5.8

لاراول یکی از پیشرفته ترین فریم ورک های موجود PHP برای توسعه دهندگان می باشد. این فریم ورک هر ساله بروزرسانی های جدیدی را با انتشار نسخه های جدید دریافت می کند. امسال هم انتشار Laravel 5.8 توسعه دهندگان را نا امید نکرد، در آخرین نسخه چند ویژگی جدید نیز با نسخه های قدیمی ادغام شده است.ویژگی های Laravel 5.8آخرین ویژگی های Laravel 5.8 شگفت انگیز است و این فریم ورک را بیش از حد قوی و امن میسازد. این ویژگی ها کمک می کنند که هسته اصلی وبسایت لاراول بهینه شوند.بعد از نصب Laravel 5.8 این ها ویژگی هایی هستند که متوجه آنها خواهید شد:بروز رسانی قانون اعتبارسنجی ایمیلDotenv 3.0منسوخ شدن توابع کمکی آرایه و رشتهBlade Template File Path in Compiled fileCache TTL in Seconds Changeمتد جدید firstWhere در کالکشنUnquoted MySQL JSON Values in Databaseبروز رسانی اعتبارسنجی ایمیلقانون های اعتبارسنجی ایمیل هم اکنون در لاراول هستند، اگرچه Laravel 5.8 دارای منشورهای بین المللی است که باید آدرس ایمیل را بررسی کنید. به این معنی است که اعتبارسنجی ایمیل در حال حاضر بررسی خواهد کرد آیا ایمیل بر اساس قوانین سازگار RFC5630 است یا خیر.برای مثال اگر پروژه لاراول شما دارای قطع کد اعتبارسنجی ایمیل زیر باشد:$request->validate([ 'email' => 'email', ]);پروسه اعتبارسنجی ایمیل برای ایمیلی مانند axy@abcd.se در Laravel 5.7 ناموفق است اگرچه با بروزرسانی های جدید در Laravel 5.8 موفقیت آمیز خواهد بود.Dotenv 3.0لاراول 5.8 از نسخه جدید Dotenv 3.0 برای مدیریت محیط env. پروژه استفاده می کند.ویژگی کلیدی در Dotenv 3.0 پشتیبانی آن از رشته های چند خطی و فضاهای خالی در اخر رشته های فایل env. می باشد به عنوان مثال:DEVELOPMENT_APP_KEY="specialstringforthisapplication" سایر ویژگی های قرار گرفته است:انعطاف پذیری بیشتر در مقررات بخشی هایی از محیط که شما می خواهید بخوانید و مدیریت کنید.پشتیبانی First-class برای متغیرهای چندخطی.متغیرها اصلاح نمیشوند، به همان صورتی که هستند دریافت خواهید کرد.پذیرش لیستی از مسیرهایی برای پیدا کردن فایل env. نسبت به کار روی تک مسیر.اعتبارسنجی قوی تر نام متغیرها برای جلوگیری از خطای صامت یا مبهم.در Laravel 5.7 فقط specialstringfor را بازگشت میداد در همین حال در Laravel 5.8 شما می توانید کل specialstringforthisapp را پارس کنید. همچنین فضاهای اضافی بعد از رشته را نادیده میگیرد که ما قبلا به صورت تکه تکه شده از متغیرهای محیطی درآورده ایم.منسوخ شدن توابع کمکی آرایه و رشتهدر Laravel 5.8 هیچ تابع کمکی برای رشته یا آرایه موجود نیست، در عوض شما باید از فساد ::Arr و ::Str استفاده کنید در همین حال اگر شما نمی خواهید که روی کدهای موجود مجددا کار کنید می توانید از پکیج های مشخصی برای نگهداری عملکردهای موجود استفاده کنید.شما باید یک تابع موجود _array را جایگزین کنید مانند:function array_add($array, $key, $value)با:Arr::add($array, $key, $value)به طور مشابه توابع کمکی رشته مانند:function str_contains($haystack, $needles)باید با کد زیر جایگزین شود:Str::contains($haystack, $needles);در واقعیت اگر شما کد Laravel 5.8 را برای توابع کمکی آرایه یا رشته چک کنید متوجه میشوید که از نسخه فساد استفاده شده است.پشتیبانی Carbon 2.0نسخه جدید Carbon 2.0 هم اکنون در Laravel 5.8 برای سهولت توسعه دهندگان در کنترل عملیات مربوطه پشتیبانی می شود.پشتیبانی Pheanstalk 4.0لاراول 5.8 هم اکنون از Pheanstalk 4.0 پشتیبانی می کند. اگر شما از کتابخانه قدیمی تر Pheanstalk در اپلیکیشن خود استفاده می کنید به وسیله Composer به آخرین نسخه بروزرسانی کنید.Blade Template File Path in Compiled fileگرچه همه ما می دانیم لاراول فایل های blade را کامپایل می کند اما به نحوی مسیر آن را فراهم نمی کند.Laravel 5.8 با راه حل این مشکل آمده است.در Laravel 5.8 یک مسیر ویژه برای فایل های blade وجود دارد همانگونه که در مثال زیر نشان داده شده است:<?php /* /var/www/me/5.8/blog/resources/views/welcome.blade.php */ ?> <!doctype html> <html lang="<?php echo e(str_replace('_', '-', app()->getLocale())); ?>"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Laravel</title> <!-- Fonts --> <link href="https://fonts.googleapis.com/css?family=Nunito:200,600" rel="stylesheet">Laravel Error Pageلاراول 5.8 با صفحه های خطای جدید آمده است که شامل طراحی مینیمالیستی می باشد که برای اکثر وبسایت ها مناسب است. بنابراین اپلیکیشن های تحت وب نیازی به طراحی دوباره این صفحه ها ندارند.Cache TTL in Seconds Changeاگر اپلیکیشن شما از توابع کش Laravel 5.8 استفاده می کند پس باید به خاطر داشته باشید عدد متغیری که برای طول مدت زمان کش وارد می کنید بر حسب ثانیه است بر خلاف Laravel 5.7 که بر حسب دقیقه بود.Cache::put('foo', 'bar', 15);همین حالت برای توابع putMany و add و remember نیز وجود دارد.متد جدید firstWhere در کالکشنلاراول 5.8 یک تابع جدیدی به اسم firstWhere را معرفی کرد که با شی کالکشن یکپارچه شده است. در عوض استفاده از first() شما می تواند یک شی تنها با استفاده از متد firstWhere بگیرید.یک مثال:$collection = collect([ ['name' => 'Hardik', 'age' => 25], ['name' => 'Vimal', 'age' => 24], ['name' => 'Harshad', 'age' => 23], ]); $collection->firstWhere('name', 'Vimal'); // ['name' => 'Vimal', 'age' => 24]Unquoted MySQL JSON Values in Databaseدر Laravel 5.7 گونه JSON مقادیر ذخیره شده در ستون های دیتابیس MySQL و MariaDB که بین دو کوتیشن باشند را باز میگرداند در حالی که در Laravel 5.8 همان مقادیر را به صورت تمیز برمیگرداند.یک مثال در این مورد:$value = DB::table('users')->value('options->language'); dump($value); // Laravel 5.7… ' "en" ' // Laravel 5.8… 'En'کانال های اطلاع رسانی Newmo و Slackکانال های اطلاع رسانی Nexmo و Slack از پروژه اصلی لاراول حذف شده اند و به عنوان یک پکیج مجزا ارائه شده اند.برای استفاده مجدد از Slack یا Nexmo در پروژه خود باید موارد زیر را به کار ببرید :composer require laravel/nexmo-notification-channel composer require laravel/slack-notification-channelپروسه بروزرسانی از نسخه های قدیمی به جدیدترین نسخهبرای بروزرسانی باید حداقل به یک ساعت زمان برای تغییرات احتمالی ذکر شده در مستندات لاراول نیاز دارید. برای شروع نصب Laravel 5.8 باید اول وابستگی های فریم ورک داخل composer.json بروز کنید.The environment MethodAuthenticationCacheCollectionsDatabaseEloquentViewValidationNotificationsنصب Laravel 5.8 روی سرور ( Local host )برای نصب Laravel 5.8 از ابتدا به موارد زیر نیاز پیدا خواهید کرد:PHP >= 7.1.3ComposerXampp / Wampلاراول برای مدیریت وابستگی هایش از composer استفاده می کند. برای شروع نصب Laravel با استفاده از composer شما باید ابتدا به نصب composer روی ماشین خانگی همانند تصویر زیر عمل کنید: زمانی که نصب Laravel تمام شد می تواند با استفاده از دستور زیر اقدام به ایجاد پروژه جدید کنید:composer create-project --prefer-dist laravel/laravel CloudwaysStarting Laravel Serverاگر شما برنامه PHP را بر روی Local host نصب کرده باشید و می خواهید از سرور داخلی آن برای میزبانی اپلیکیشن استفاه کنیدمی توانید از دستور Laravel artisan command استفاده کنید. این دستور به شما کمک می کند که سرور لاراول را بر روی http://localhost:8000 شروع کنید:php artisan serveسپس می توانید URL اپلیکیشن خود را باز کرده و صفحه لاراول را مشاهده می کنید.