Executando verificação de segurança...
1

[ LARAVEL ] Maneiras de chamar o controller na rota

Quais as diferentes maneiras de chamar um controller em uma rota no framework Laravel? Vamos explorar isso agora.

Utilizando um array com a classe e o método (Laravel 8 e posteriores):

A forma mais comum e recomendada de chamar um controller em uma rota no Laravel é passar a classe do controller e o método que você deseja invocar dentro de um array como o segundo parâmetro da definição da rota. Dessa forma, você está criando um vínculo claro entre a rota e o método que será executado.

Route::get('/', [HomeController::class, 'index']);

Neste exemplo, estamos usando a classe HomeController e o método index para lidar com a rota.

Utilizando a sintaxe "Classe@Método" (Laravel 9 e versões anteriores):

Em versões mais antigas do Laravel, você pode utilizar uma sintaxe mais simples, onde especifica a classe e o método separados por @.

Route::get('/', 'App\Http\Controllers\HomeController@index');

Aqui, estamos chamando o método index do controller HomeController.

Qual usar?

A primeira abordagem, usando um array, oferece uma maneira mais segura e estável de vincular a rota ao controller, pois o próprio PHP verifica se a classe e o método existem em tempo de execução. A segunda abordagem, com a sintaxe "Classe@Método", pode ser mais concisa, porém, em troca, não há uma verificação em tempo de execução para garantir que a classe e o método existam.

Primeiro post de alguns que pretendo postar sobre Laravel e seu ecossistema.

Carregando publicação patrocinada...
1

Muito interessante, me lembrou um tempo que eu vivia trabalhando apenas com Laravel onde trabalho atualmente, por aqui infelizmente ainda utilizamos o Laravel 5.2 🥲, buscamos tentar atualizar a stack, porém há sempre mais demandas chegando...