لاراول Laravel فریم ورک توسعه و طراحی سایت می باشد که در زمان و هزینه شما صرفه جویی می نماید و توسعه وب سایت را بسیار ساده می سازد. Laravel در زمان پیدایش خود جامعه کاربری PHP را تحت تاثیر خود قرار داد و برای خود جایگاه ویژه ای در بین فریم ورک های PHP باز نمود و آن نیز به دلیل سادگی و سرعت بالای توسعه وب سایت توسط این فریم ورک می باشد. در حقیقت توسط Laravel می توانید برنامه های وب را با سریعترین و با کیفیت ترین راه پیاده سازی نمایید. با توجه بخش های بسیاری در وب تکرای می باشند و نیازی به پیاده سازی مجدد ندارند لاراول Laravel به شما امکان تمرکز بیشتر بر قسمت هایی از نرم افزار را می دهد که هم اکنون وجود ندارد و جزو بخش های جدید می باشد و این فریم ورک به شما امکان استفاده از میانبرها برای پیاده سازی بخش های تکراری برنامه وب را می دهد که با استفاده از آنها و اضافه نمودن کدهای جدید می توانید به راحتی برنامه مورد نیاز خود را پیاده سازی نمایید.

ما در طول این مقاله به شما لاراول را از صفر آموزش نمی‌دهیم، بلکه شما را با امکانات جدیدی که در لاراول 9 معرفی شده، آشنا خواهیم کرد. بنابراین اگر جز افرادی هستید که از قبل با لاراول آشنا هستید و تمایل دارید با امکانات جدید لاراول 9 آشنا شوید. این مقاله می‌تواند به شما در رسیدن به این هدف کمک کند. در غیر اینصورت ابتدای کار نیاز است که با لاراول از طریق مقاله طراحی سایت با لاراول آشنا شوید.

 

 

تاریخ انتشار ورژن ۹ لاراول


در ابتدا زمان عرضه ورژن ۹ لاراول در حدود سپتامبر سال جاری (شهریور ۱۴۰۰) برنامه‌ریزی شده بود. اما در نهایت تیم لاراول تصمیم گرفت تا ورژن جدید را در ژانویه ۲۰۲۲ (دی ماه ۱۴۰۰) عرضه کند ودلیل این تاخیر استفاده از ورژن 6 سیمفونی بوده است " ورژن 6.0 سیمفونی در ماه نوامبر سال 2022 منتشر می‌شود، بنابراین ما تصمیم گرفتیم تا انتشار نسخه جدید لاراول را تا ژانویه ۲۰۲۲ به تأخیر بیندازیم. با این تاخیر در انتشار ما می‌توانیم از ویژگی‌های جدید ورژن ۶ سیمفونی استفاده کنیم."

نسخه PHP (*) Release رفع اشکال تا زمانی که رفع امنیتی تا
6 (LTS) 7.2 - 8.0 3 سپتامبر 2019 25 ژانویه 2022 6 سپتامبر 2022
7 7.2 - 8.0 3 مارس 2020 6 اکتبر 2020 3 مارس 2021
8 7.3 - 8.1 8 سپتامبر 2020 26 ژوئیه 2022 24 ژانویه 2023
9 (LTS) 8.0 - 8.1 8 فوریه 2022 8 فوریه 2024 8 فوریه 2025
10 8.0 - 8.1 7 فوریه 2023 7 آگوست 2024 7 فوریه 2025

 

لیست‌ امکانات اضافه شده در لاراول 9

قبل از اینکه به ویژگی‌های جدید بپردازیم، می‌خواهیم به این نکته اشاره کنیم که با شروع لاراول 9، لاراول یک نسخه اصلی جدید را تقریباً هر دوازده ماه یک بار به جای برنامه شش ماهه قبلی منتشر می‌کند:


ویژگی Anonymous Stub Migrations


در نسخه‌های قدیمی‌تر لاراول داشتن چندین migration با یک کلاس ثابت باعث مشکلات می‌شد. البته این مشکل در نسخه ۸.۳۷ لاراول حل شد اما در نسخه ۹ این موضوع به صورت رسمی منتشر شده و بهینه‌سازی‌های لازم برای جلوگیری از مشکلات Conflict رفع شده است. از لاراول ۸.۳۷ به بعد، قابلیت Anonymos Class Migration معرفی شد و حال دیگر خبری از مشکلات مربوط به چندین Migration با یک Class Name وجود ندارد.

دیزاین جدید route:list


دستور routes:list برای مدت بسیار زیادی است که در لاراول وجود دارد اما این دستور زمانی که routeهای پیچیده و بزرگی را ایجاد کنیم با مشکلاتی روبرو می‌شود. در نسخه ۹ لاراول تلاش کرده تا با استایل جدیدی سبک نوشتن routes:listها را تغییر داده و روش جدیدی را ارائه بدهد.

نسخه ۸ پی اچ پی حداقل نسخه در لاراول ۹

نسخه جدید لاراول از سیمفونی ورژن ۶ استفاده می‌کند. همچنین فریمورک سیمفونی ورژن ۶ برای اجرا به ۸ php نیاز دارد، بنابراین حداقل ورژن php برای اجرا لاراول 9، نسخه ۸ آن می‌باشد.

تنها نسخه‌ای که در لاراول ۹ برای زبان برنامه نویسی PHP پشتیبانی می‌شود نسخه ۸ است - بنابراین نسخه‌های قدیمی‌تر از لاراول پشتیبانی بعمل نیاورده و به نظرم این موضوع بسیار کاربردی است. همچنین برای امر تستینگ لاراول ۹ از نسخه ۸ PHPUnit پشتیبانی کرده و نسخه‌های قبلی در ورژن ۹ پشتیبانی نمی‌شوند. نسخه ۸ PHP همراه با ویژگی‌های بسیار کاربردی ارائه می‌شود که کامپایل JIT یا Just in Time یکی از آن‌هاست. بنابراین بهتر است هر چه سریع‌تر به این نسخه از PHP‌ مهاجرت بکنید. 

توابع string مربوط به php 8


از آنجایی که لاراول نسخه ۹ از PHP 8 پشتیبانی بعمل می‌آورد قابلیت جدید مربوط به String که در PHP8 بوجود آمد در لاراول جدید نیز پشتیبانی می‌شود. منظور از این توابع جدید مواردی مانند str_contains()، str_start_with() و str_end_with() است. حال می‌توان پشتیبانی از این موارد را به صورت داخلی در کلاس \Illuminate\Support\Str مشاهده کرد.

رابط کاربری جدید برای Query Builder


تغییر از SwiftMailer به Symfony Mailer


در نسخه‌های قدیمی تر لاراول برای ارسال ایمیل‌ها از Swift Mailer استفاده می‌شد که در حال حاضر دیگر از این کتابخانه پشتیبانی بعمل نیامده و به همین دلیل لاراول ۹ نیز با یک کتابخانه دیگر به نام Symfony Mailer همراه شده و از این به بعد باید اپلیکیشن‌های‌تان را با این کتابخانه هماهنگ کنید.

بهبود Eloquent Accessors / Mutators


فایل سیستم جدید
در لاراول ۹ برای بحث فایل سیستم حال از ابزار جدیدی تحت عنوان Flysystem 3.x استفاده می‌شود. Flysystem از تمام تعاملات و ویژگی‌های یک فایل سیستم که توسط فاساد Storage فراهم شده است پشتیبانی می‌کند.