Php 使用composer了解psr-4自动加载功能

Php 使用composer了解psr-4自动加载功能,php,composer-php,autoload,Php,Composer Php,Autoload,我正在努力理解composer的自动加载部分。附加图像是我的项目结构 index.php require __DIR__ . '/vendor/autoload.php'; // require "app/Controller/MyController.php"; // If i uncomment this my code is working fine. (only for testing purpose) $mynamespace = new App\Controller\MyCont

我正在努力理解composer的自动加载部分。附加图像是我的项目结构

index.php

require __DIR__ . '/vendor/autoload.php';

// require "app/Controller/MyController.php"; // If i uncomment this my code is working fine. (only for testing purpose)

$mynamespace = new App\Controller\MyController();

$mynamespace->index();
namespace App\Controller;

class MyController{


    public function index(){
        echo "New  World";
    }
}
composer.json

"psr-4": {
         "App\\": "app/" 
         }
namespace App\Controller;

class MyController{


    public function index(){
        echo "New  World";
    }
}
MyController.php
namespace App\Controller;

class MyController{


    public function index(){
        echo "New  World";
    }
}
我运行了composer dump autoload,但文件未加载

如何通过composer映射自动加载的文件?我可能会使用多个文件夹和文件。所以我宁愿它是一个单一的目录作为应用程序/


从我的头顶,所以不确定是否有用:

require __DIR__ . '/vendor/autoload.php';

use App\Controller\MyController;

$mynamespace = new MyController();

$mynamespace->index();
或者可能转义顶级命名空间:

$mynamespace = new \App\Controller\MyController();

您的
MyController.php
文件是什么样子的?此外,您是否运行了
composer安装程序
?没有更改。。我还是没找到你的作曲家,你能更新一下吗?你能把整个composer.json也贴出来吗?我知道了。我错过了composer.json中的自动加载。感谢您指向重新检查composer.json