Laravel е най-популярната PHP рамка, на която са изградени над 1,2 милиона уебсайта. От излизането си през юни 2011 г. Laravel привлече вниманието на много уеб разработчици, представяйки се като най-използваната PHP рамка.
Laravel предлага бърза среда за разработка, сигурност и добри ръководства за разработчици. Създаден и поддържан от създателя си Тейлър Отуел, Laravel продължава да прави подобрения в своя софтуер. Той следва семантична схема за версиране и в момента е на версия 8.x.
Ето осем нови функции, на които да обърнете внимание в Laravel 8.
1. Laravel Jetstream
Това е новата функция за скеле за приложения в Laravel. Той идва с готови функции като проследяване на сесии, влизане, регистрация, проверка на имейл, двуфакторно удостоверяване и незадължително управление на екипа.
Jetstream предлага избор от две опции за скеле: Livewire и Inertia.
Livewire е отзивчива и динамична библиотека, която предлага възможността да се избегне използването на JavaScript рамка като Vue.js. Той използва езика за шаблониране на Blade по подразбиране. Livewire предлага и гъвкавост при избора между напускане на Blade или използване на Vue.js.
Inertia използва Vue.js като език за шаблониране.
Прочетете още: Какво е Vue.js?
Той дава пълната мощ на Vue.js, без да е необходимо рутиране от страна на клиента. Ако Vue е предпочитаният от вас език за шаблониране, стекът на инерцията е добър избор.
2. Намаляване на миграцията
Докато разработвате приложението си, вашите миграции може да се натрупват. Можете да ги „смачкате“ в един SQL файл, за да избегнете дрънкането. Тази опция е достъпна за потребители на MySQL или PostgreSQL.
Laravel ще създаде файл на схема, когато командата schema: dump се изпълнява. Когато се опитате да мигрирате вашата база данни, Laravel първо ще мигрира SQL файла, свързан с вашата схема. След това, ако има някакви миграции, които не са били част от схемата, те ще бъдат изпълнени.
3. CSS на Tailwind
Laravel вече използва Tailwind CSS рамката като пагинатор по подразбиране. Tailwind е CSS първа библиотека, която предоставя CSS класове за еднократна употреба. Предоставя предимството да разполагате с информацията за стила си на едно място, вместо да я разпръсквате. Можете да приложите предварително дефинирани класове директно към вашия HTML документ.
Tailwind също предлага възможността за изграждане на отзивчиви дизайни. Той предлага първа мобилна система, подобна на тази на Bootstrap. Това предполага, че нефиксираните помощни програми реагират на всички размери на екрана, докато предварително зададените помощни програми влизат в сила в определени точки.
Tailwind също разполага с режим на точно време, за да може вашите стилове да се генерират при поискване, вместо всичко да се изобразява в първоначалното време на изграждане. Това го прави по-бърз от използването на обикновен CSS. Друго предимство, което предлага, е, че не е нужно да се отървете от неизползваните си производствени стилове, като ви дава възможност да използвате кода си в множество среди.
Също така е интересно да се отбележи, че Laravel Jetstream е построен с помощта на Tailwind.
4. Групова работа
Можете да използвате тази функция, за да стартирате партида от задачи в даден момент и да извършите определено (и) действие (я), когато изпълнението им приключи. The Автобусна фасада осигурява групов метод, който ви позволява да изпращате задачи.
Можете да изпълните това в тандем с други обратни обаждания за завършване като улов, тогава и накрая за да добавите функционалност към вашите работни места.
използвайте App \ Jobs \ ProcessPodcast;
използвайте App \ Podcast;
използвайте Illuminate \ Bus \ Batch;
използвайте Illuminate \ Support \ Facades \ Bus;
използвайте Throwable;
$ batch = Bus:: batch ([
нов ProcessPodcast (Podcast:: find (1)),
нов ProcessPodcast (Podcast:: find (2)),
нов ProcessPodcast (Podcast:: find (3)),
нов ProcessPodcast (Podcast:: find (4)),
нов ProcessPodcast (Podcast:: find (5)),
]) -> след това (функция (Batch $ batch) {
// Всички задачи са завършени успешно ...
}) -> catch (функция (Batch $ batch, Throwable $ e) {
// Открита е грешка на първата партидна работа ...
}) -> накрая (функция (Batch $ batch) {
// Изпълнението на партидата приключи ...
}) -> изпращане ();
върнете $ batch-> id;
За да започнете, трябва да създадете таблица за миграция, която ще съдържа метаданни на заданието, като проценти на изпълнение. Използвайте командата php занаятчийска опашка: партида-таблица да го направя. И тогава php занаятчия мигрира да ги мигрират. Вече можете да дефинирате вашите групови задачи и след това да ги изпратите, когато сте готови.
5. Моделни фабрични класове
Първо, нека обсъдим фабриките за модели. Те се използват за засяване на вашите бази данни с тестови данни. Тези фалшиви данни са важни за целите на тестването, преди да бъдат добавени реални потребителски данни.
В Laravel 8 бившите класове Eloquent модел бяха напълно заменени с фабрики, базирани на класове. С това вече можете да управлявате състояния на обекти, като просто използвате методи. Тези методи обикновено извикват състояние () метод, който е даден в базовия фабричен клас на Laravel. The състояние () метод приема като аргумент функция, която ще вземе масив от атрибути, присвоени на фабриката.
6. Подобрена поддръжка
Преди това Laravel включваше списък с разрешени IP адреси, които можете да използвате за достъп до приложението в режим на поддръжка. Това е премахнато и заменено с по-просто „тайно“ решение. Можете да посочите байпасния маркер с помощта на тайна опция.
Докато сте в режим на поддръжка, можете да осъществите достъп до URL адреса на приложението си и Laravel автоматично ще предаде бисквитката за байпас на вашия браузър. След като бисквитката бъде издадена, ще имате достъп до приложението обикновено, сякаш не е било в режим на поддръжка.
Потребителите ви могат да се сблъскат с грешки, ако използвате PHP занаятчия надолу по време на разполагането. За да се избегне това, Laravel предлага опция за изобразяване на изглед в режим на поддръжка, който ще се връща при всяко отправяне на заявка. Можете предварително да изобразите шаблон, като използвате опцията за рендиране в командата надолу.
7. Помощници за тестване на времето
Laravel вече включва възможността да ви позволи да манипулирате текущото време. Имате възможност да използвате атрибутите си за време като милисекунди, часове, дни и т.н.
публична функция testTimeCanBeManipulated ()
{
// Пътувайте в бъдещето ...
$ това-> пътуване (5) -> милисекунди ();
$ това-> пътуване (5) -> секунди ();
$ това-> пътуване (5) -> минути ();
$ това-> пътуване (5) -> часа ();
$ това-> пътуване (5) -> дни ();
$ това-> пътуване (5) -> седмици ();
$ това-> пътуване (5) -> години ();
// Пътуване в миналото ...
$ това-> пътуване (-5) -> часа ();
// Пътуване до изрично време ...
$ this-> travelTo (now () -> subHours (6));
// Връщане обратно към настоящето време ...
$ this-> travelBack ();
}
Тези помощни функции правят работата ви изчистена и лесна за проследяване, като дават описателни имена на методите.
8. Подобрено ограничаване на скоростта
Ограничаването на скоростта ви позволява да управлявате количеството трафик, което получавате по определен маршрут или група маршрути. Това може да се постигне с помощта на дросел за мидълуер. Междинният софтуер на дроселната клапа приема името на ограничителя на скоростта, който искате да използвате по маршрут. Връща се код на HTTP заявка (429), ако входящата заявка надвишава дадено ограничение на скоростта.
В Laravel 8 ограничителят на скоростта е изграден с по-голяма гъвкавост, като същевременно има обратна съвместимост. Функцията за обратно извикване на ограничителя на скоростта ви позволява динамично да изграждате подходящи ограничения на скоростта, установени за удостоверени потребители или входящи заявки.
Вълнуващи времена за Laravel
Laravel е лесен за научаване и предоставя сложно ръководство за разработчици с лесни за следване примери. Той предоставя корекции на грешки и корекции на почти седмична база и големи издания ежегодно (около септември). Ако се нуждаете от повече помощ, Laravel предоставя платформата Laracasts, където можете да получите експертна помощ. Платформата обаче предлага уроци за платени уеб разработки.
За уеб разработчика Laravel е задължително умение. Той е с отворен код, безплатен за използване и с общност от над 40 000 потребители. Това е технология, която си струва да се следи.
Интересувате ли се от изучаването на напреднали уеб разработки? Избягвайте да пишете повтарящ се код, вместо това използвайте тези рамки за уеб разработка.
Прочетете Напред
- Програмиране
- Уеб разработка
- Програмиране на PHP
Абонирайте се за нашия бюлетин
Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и ексклузивни оферти!
Още една стъпка…!
Моля, потвърдете имейл адреса си в имейла, който току-що ви изпратихме.