Php 使用composer了解psr-4自动加载功能
我正在努力理解composer的自动加载部分。附加图像是我的项目结构 index.phpPhp 使用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
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