我制作了一个test项目来了解作曲家和包装工作者是如何运作的。该项目也在packagist。
一个简单的composer require rakibtg/gowin
将从packagist安装包。
但由于某种原因,命名空间无法正常工作。
这是GoWin.php文件:
<?php
namespace GoWin;
class GoWin {
public function serve() {
echo 'Lets Win Everybody!';
}
}
这是test.php文件,我尝试使用serve()
类中的GoWin
方法。
<?php
require_once './vendor/autoload.php';
// use GoWin;
( new GoWin\GoWin() )->serve();
但它无法使用此错误执行serve
方法:
致命错误:未捕获错误:
中找不到类'GoWin \ GoWin'/ Users / usr / Desktop / t estGoWin / index.php:7堆栈跟踪:
在第7行的/Users/usr/Desktop/testGoWin/index.php中抛出0 {main}
此刻我无法理解我所缺少的东西!我应该使用psr-0还是psr-4?
答案 0 :(得分:0)
我通过切换到PSR-4解决了它,只需更新composer.json autolaod
属性:
"autoload": {
"psr-4": {
"GoWin\\": "src/"
}
},