gpt4 book ai didi

php - 使用 composer 和 PSR-0 自动加载命名空间未按预期工作

转载 作者:行者123 更新时间:2023-12-04 17:06:45 25 4
gpt4 key购买 nike

我做了一个 test项目以了解 composer 和 packagist 的工作原理。项目也在packagist .

一个简单的composer require rakibtg/gowin将从 packagist 安装包。

但由于某种原因,命名空间没有按预期工作。

这是我的目录结构和 composer 文件。
enter image description here

这是 GoWin.php 文件:

  <?php

namespace GoWin;

class GoWin {
public function serve() {
echo 'Lets Win Everybody!';
}
}

这是我尝试使用的 test.php 文件 serve()方法来自 GoWin类(class)。
  <?php

require_once './vendor/autoload.php';

// use GoWin;

( new GoWin\GoWin() )->serve();

但它无法执行 serve有这个错误的方法:

Fatal error: Uncaught Error: Class 'GoWin\GoWin' not found in

/Users/usr/Desktop/t estGoWin/index.php:7 Stack trace:

0 {main} thrown in /Users/usr/Desktop/testGoWin/index.php on line 7



此刻我无法理解我错过了什么!我还应该使用 psr-0 还是 psr-4?

最佳答案

我通过切换到 PSR-4 解决了这个问题,只需更新 composer.json autolaod属性如下:

"autoload": {
"psr-4": {
"GoWin\\": "src/"
}
},

关于php - 使用 composer 和 PSR-0 自动加载命名空间未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50015470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com