Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Controller não encontrado

Olá, ao refazer o apresentado em vídeo, recebi um erro

Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR) Class 'app\Http\Controllers\Controller' not found

ao tentar herdar da classe Controller. Meu código é o seguinte:

<?php

namespace app\Http\Controllers;

class SeriesController extends Controller
{
    public function listarSeries() 
    {
        $series = ['greys anatomy','lost','agent of shield']; //array de séries

        $html = "<ul>";

        for($i = 0 ; $i < 3 ; $i++)
        {
            $html = $html . "<li>" . $series[$i] . "</li>";
        }

        $html = $html . "</ul>";

        return $html; //exibe o html na tela com se fosse um echo
    }
}

?>
4 respostas
solução!

Olá Bruno,

Verifica se modificando essa linha resolve o problema:

// App com 'a' maiúsculo
namespace App\Http\Controllers;

Modificando essa linha funcionou sim. Eu também consegui resolver criando a classe controller de forma diferente: Criando pelo terminal através do comando php artisan make:controller NomeClasseController.

Obrigado de qualquer forma.

Comigo ocorreu o mesmo problema. Estranho que no caminho, o diretório "app" está em letras minúsculas, causando o mesmo erro que o colega acima, mas ao colocar "App" com a primeira letra em maiúsculo, funciona! Muito sem lógica isso.

Olá Ricardo, o namespace não depende da estrutura de pastas, o namespace é uma forma de você definir a organização de suas classes sem depender do caminho.

Seria algo como você definir "pacotes" para organizar o seu código.

Como boa prática é bom utilizar um namespace baseado nas suas pastas, mas não é obrigatório.