W ostatnich tygodniach wyszła nowa wersja Laravela oznaczona numerem 5.7. Zmiany w stosunku do poprzedniej wersji nie są zbyt duże, ale warto je odnotować. W tej serii wpisów opiszemy po kolei ważniejsze zmiany.
W poprzednim poście opisaliśmy nową metodę w klasie Paginator. W dzisiejszym poście opisujemy zmianę, którą jest możliwość przekazania jako pierwszy parametr globalnej funkcji action()
tablicy z dwoma polami zamiast stringa, w celu stworzenia adresu URL. Do tej pory metoda action()
przyjmowała jako pierwszy parametr nazwę kontrolera i jego metody oddzielonej znakiem @
:
$url = action('HomeController@index');
Teraz możemy przekazać nazwę kontrolera i metody jako tablicę z dwoma polami. Pierwsze pole to nazwa kontrolera (klasy), a drugie to nazwa metody. Jest to tak zwany callable array syntax
:
$url = action([HomeController::class, 'index']);
Jeśli używamy edytora, który pozwala nam nawigować po kodzie klikając w nazwy klas, dzięki temu zapisowi będziemy w stanie łatwo przejść do kontrolera.