找不到致命错误类MainController

so i have the following structure for what i'm trying to target but what i'm getting is the Fatal error class MainController not found , i'm new to autoload and namespace thing (but getting into them fast) i just need to know why this is happening , hope you guys have bit explained situation for me? i did saw few of answer around stackoverflow but nuthing helped, i know i'm doing something really wrong, but thats how i will learn :). structure:

composer.json

src/controllers/MainController.php

the following is my autoload inside composer.json file:

"autoload": {
    "psr-4": {
       "controllers\\": "src/controllers/"
     }
}

and this is how my MainController.php looks alike :

namespace MainController;

class MainController{

  function test($name){

    echo 'holaaaa'.$name;

  }

}

controller call inside: app/loads/loadController.php :::

use MainController;

$MainController = new MainController();

more info on vendor/autoload.php

it's included inside : index.php and inside index.php i have included mainapp.php and inside mainapp.php i have included loadcontroller.php vich calls the controller

structure screenshot:

this is the sreenshot of where files are located.

Okay, in your Composer file you say the namespace is controllers. In your PHP file you say the namespace is MainController. They need to be the same for the autoloading to work.

If we are to go by your Composer file then the PHP should look like this:

namespace controllers;
class MainController {}

And the class should be called like this:

$MainController = new \controllers\MainController;

Or like this:

use controllers\MainController;
$MainController = new MainController;

Or, if you want a nicer-looking class name:

use controllers\MainController as Controller;
$MainController = new Controller;

In my case I only managed to correct it after deleting my folder from the composer (vendor) and rerunning the command composer dump-autoload