بعد از انتشار نسخه 6.3 لاراول در یک بازه ی زمانی خیلی کم و در همین هفته نیز ورژن جدید این فریمورک محبوب منتشر شده و برای استفاده عموم در دسترس قرار گرفته است. شما می توانید همانند نسخه های قبلی و به سادگی این نسخه را نصب و استفاده کنید و با ویژگی های جدید آن آشنا شوید.
برای نصب این نسخه کافیست همانند نسخه های قبلی از طریق یکی از دو روش زیر استفاده کنید. (نصب مستقیم پروژه و یا نصب بسته اینستالر لاراول):
//دانلود اینستالر لاراول
composer global require laravel/installer
//ساخت پروژه جدید
laravel new blog
//نصب پروژه لاراولی با کامپوزر
composer create-project --prefer-dist laravel/laravel blog
برای اینکه بدانید در این نسخه شاهد چه تغییراتی هستیم با ما همراه باشید.
به عنوان اولین تغیر در این نسخه باید به شما اطلاع بدهیم که یک مشکل امنیتی در این نسخه مربوط به ریست پسورد برطرف شده است. البته این یک مشکل جدی نبوده است و مربوط به محدودیت زمانی در درخواست بازیابی رمز برای کاربران است ،به این شکل که کاربر در هر 60 ثانیه تنها یکبار می تواند درخواست بازیابی رمز عبور خود (ریست کردن رمز) را داشته باشد. این تغییر باعث می شود تا حملات به این بخش کم شود بعبارتی مانع از حمله مهاجمین به وسیله درخواست های زیاد برای بازیابی رمز عبور می شود. این حملات معمولا برای اختلال در سیستم ارسال ایمیل و یا رساندن اپ شما به محدودیت ارسال ایمیل آن می شود و باعث اختلال در سیستم ارسال ایمیل می شود.البته این حمله باعث بالا رفتن میزان مصرف سرور و به مشکل خوردن آن نیز می شود. این تغییر با توجه به درخواست های کاربران در این نسخه قرار گرفته است.
نکته ی بعدی افزوده شدن متدی به نام missing() به کلاس ریکوئست (Request) است که مقادیر برگشتی از متد has() را بررسی می کند. برای درک بهتر کار آن می توانید کد زیر را مشاهده کنید:
// Before
if (! $request->has('foo')) {
//
}
// using missing
if ($request->missing('foo')) {
//
}
ویژگی بعدی که در این نسخه شاهد آن هستیم افزوده شدن متد pipes() به عنوان یک دریافت کننده به کلاس Pipeline است که باعث ایجاد یک سیستم pipelines (معدل فارسی خط لوله می باشد) پویا تر می شود. این متد جایگزین استفاده مستقیم از خاصیت $pipes می باشد. برای درک بهتر این منظور قطعه کد زیر را مشاهده کنید:
class BackupAction extends Pipeline
{
protected function pipes(): array
{
return config('actions.backup.tasks', [
Tasks\SetupPassable::class,
Tasks\CreateTemporaryDirectory::class,
Tasks\PrepareFilesToBackup::class,
Tasks\CreateZipBackupFile::class,
Tasks\MoveZipArchiveToDisks::class,
Tasks\SendNotification::class,
]);
}
}
به عنوان آخرین ویژگی که می توان به آن اشاره کرد افزوده شدن یک متد به نام ssertCreated() می باشد که به سادگی این امکان را به شما می دهد که کد وضعیت 201 را برای درخواست (201 response) ارسال کنید. برای نمونه به کد زیر دقت کنید:
// Instead of the following
$response->assertStatus(Response::HTTP_CREATED);
// A convenient 201 assertion
$response->assertCreated();
البته لیست کامل ویژگی های جدید ،تغییرات و موارد رفع شده و نیز تفاوت های بین لاراول ورژن 6.3.0 و 6.4.0 را به همراه یادداشت های منتشر شده برای لاراول را در آدرس گیت هاب آن که در زیر برای شما قرار داده ایم مشاهده کنید:
آدرس مربوط به تغییرات نسخه 6 لاراول در گیت هاب
آدرس مقایسه لاراول 6.30 و 6.4.0
در زیر نیز تغییرات و ویژگی های اصلی در این نسخه را برای شما لیست کرده ایم:
v6.4.0
Added
Changed
Fixed
Security:
نظر شما چیست؟ شما می توانید نظرات ،پیشنهادات و اطلاعات خود را در رابطه با این مطلب و موضوعات مربوط از طریق قسمت نظرات با ما و سایر بازدیدکنندگان در میان بگذارید.