Я не вижу ничего плохого в вашем коде.
Убедитесь, что вы:
- Дайте правильное имя для ваших файлов и папок, с учетом регистра.Проверьте еще раз, есть ли опечатка.
Эта файловая структура
app / Контроллер / HomeController.php
отличается от
app / controller / HomeController.php
или даже
app / контроллер / homeController.php
Запустите
composer dump-autoload
из своего терминала Все ли в вашем * .php файле уже есть
<?php
в верхнем коде?
composer.json
{
"autoload": {
"psr-4": {
"App\\" : "app/"
}
}
}
(обратите внимание на прописные и строчные буквы имени файла, так как оно чувствительно к регистру)
app / Controller / HomeController.php
<?php
namespace App\Controller;
class HomeController{
public function index()
{
return 'index';
}
}
index.php
<?php
require __DIR__ . "/vendor/autoload.php";
use App\Controller\HomeController;
$homeController = new HomeController();
var_dump($homeController->index());