Какво е Laravel?
Laravel е PHP уеб фреймуърк. Целта на работата с него е за да се улеснят определени части от процесите при уеб разработка. Той предоставя инструменти за маршрутизиране на заявките, HTML шаблони със темплейт енджин, взаимодействие с база данни, тестване на кода и много други. Laravel е много подходящ както за малки така и за много големи уеб приложения или системи. Фреймуъркът е подчинен на модела за разработка на уеб базирани приложения наречен MVC. Такива приложения се предполага че имат някакъв интерфейс, чрез който потребителите взаимодействат по някакъв начин. С развитието на уеб обаче стана ясно, че този модел (MVC) все повече и повече бива изместен от модела на разработка при така наречените SPA приложения. Поради тази причина много адекватно Laravel се разви и в тази насока, като бяха добавени някои неща подпомагайки разработката на така наречените RESTful базирани приложения. В едно изречение казано:
Laravel е фреймуърк за разработка на уеб базирани приложения, който разполага с много богат набор от функции, с помощта на които се увеличава значително скоростта на разработката.
Какви инструменти ни предоставя Laravel
- Routing
- CLI – Artisan console
- Eloquent ORM
- Blade template engine
- Authentication
- Authorization
С помощта на инструмента за раутинг можем да определяме за определн път в URL адреса какво точно да се случи. Например ако имаме адреса mysite.com/register най-вероятно ще искаме да се зареди някакъв формуляр и да речем някакъв текст за пояснение. Ако имаме например адреса mysite.com/profile то най-вероятно ако потребителя не се е вписал ще бъде пренасочен към страницата за вписване или регистрация.
Artisan
Интерфейсът на командния ред, използван в Laravel, се нарича Artisan. Той включва набор от команди, които помагат за бързото и лесно изграждане на уеб приложението по което работим. Тези команди са включени от рамката на Symphony, което води до допълнителни функции в най-новата версия на Laravel.
Query Builder и ORM
Laravel включва конструктор на заявки, който помага при заявките към бази данни, използвайки различни прости верижни методи. Този инструмент осигурява ORM (Object Relational Mapper) и изпълнението на ActiveRecord, наречен Eloquent.
Шаблони
Laravel използва Blade, лек език на шаблони, използван за проектиране на йерархични блокове и оформления с предварително дефинирани блокове, които включват динамично съдържание.
Удостоверяване
Потребителското удостоверяване на системно ниво е често срещана функция в уеб приложенията. Laravel улеснява проектирането за удостоверяване, тъй като включва в себе си функции като регистрация, забравена парола и напомняния за изпращане на парола.
Електронна поща
Laravel има свой пощенски клас, който помага при изпращането на поща с богато съдържание и прикачени файлове от уеб приложението.
Redis
Laravel използва Redis за свързване към съществуваща сесия и кеш с общо предназначение. Redis взаимодейства със сесията директно.
Опашки
Laravel включва услуги за опашки като изпращане на имейли до голям брой потребители или определена Cron работа. Тези опашки помагат при по-лесното изпълнение на задачите, без да се чака изпълнението на предишната задача.
Събития и шина за команди
Laravel има така нареченият Command Bus, който помага при изпълнение на команди и изпращане на събития по прост начин. Командите в Laravel действат според жизнения цикъл на приложението.
За управление на зависимостите Laravel използва инструмента Composer.
Трябва ли да уча Laravel?
Laravel е една от най-популярните PHP рамки за разработка. Ако сте учили PHP и създавате малки приложения или работите с WordPress, наистина трябва да се справите със задачата да започнете да работите с една или повече рамки за разработка. Laravel е чудесен избор, с който да започнете.
Официален уебсайт на Laravel / Статия за Laravel в Уикипедиа
Уроци за Laravel в w3schools. в секцията за PHP.