Laravel 4. Отличия и сравнения

в 10:21, , рубрики: framework, laravel, laravel 4, php, метки: , ,

image

Относительно не давно была выпущена первая Beta фреймворка «Laravel». Товарищ rsvasilyev начал публикацию статей о разработке на 4-й версии, я в свою очередь хочу описать новые преимущества и сравнить с его предыдущей версией.

Если вы заинтересованы в этом, прошу под кат.

Изменений произошло много, но начну я пожалуй с моего любимого изменения, которое избавило от велосипедов.
Раньше мы могли применять всего 2 статически-регулярных выражений для URL вида /user/{значение}.

Первое — Последовательность цифр:

Route::get('user/(:num)', function  ($id) {
    return $id;
});

Второе — Буквенно-цифровое:

Route::get('user/(:any)', function  ($name) {
    return $name;
});

В новой версии ситуация изменилась и теперь мы сами можем назначать регулярное выражение на каждое значение.
Делается это довольно просто, одним движением пальцев:

Route::get('news/{habr}', function($habr)
{
    return $habr;
})
->where('habr', '[A-Za-z]+');

или

Route::get('news/fullnews/{idNews}', function($idNews)
{
    return $idNews;
})
->where('idNews', '[0-9]+');

Еще стоит уточнить некоторую особенность: Если вы заменим {idNews} на {idNews?} и добавим в параметр значение function($idNews = '4'), то по обращению на /news/fullnews, мы получим новость с ID = 4.

Легко, не правда ли? Поехали дальше.

Добавлена возможность использовать не только группу для фильтров, но и к определенным URL:

Route::filter('blacklist, function()
{
   return 'Привет, Habrahabr.';
});

Route::when('chat/*', 'blacklist);

Тем самым на все URL вида: chat/*, будет применяться фильтр blacklist.

Все выше описанное использовалось лично мной в проекте, остальное я опишу ниже.

Маршруты

  • Добавлена возможность применять модели к параметрам.
  • Теперь мы свободно можем описывать фильтры в классах.
  • Применение маршрутов к поддоменам.
  • Использование префиксов в группах.
Новые функции

  • Добавлены функции для работы с почтой.
  • Добавлены функции для работы с Composer, в особенности для Artisan.
  • Добавлены очереди и большой пакет функциональности работы с ними.

Если вы дочитали мою первую статью до конца, то я испытаю чуточку удовольствия.

Автор: ingrysty

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js