作曲家自动加载不起作用



我刚刚开始了一个新的PHP项目,就在前面,我遇到了自动加载器的问题。我查找了错误并查阅了文档(http://www.php-fig.org/psr/psr-4/),但问题依然存在。

因此,我创建了一个最小的例子来缩小错误的原因——然而,即使使用这个最小的例子,它也不会起作用:(

我的文件夹结构如下:

+ src/
| + Xyz.php
+ composer.json
+ test.php

这是我的代码

composer.json:

{
    "name": "sg/ABC",
    "description": "abc",
    "autoload": {
        "psr-4": {
            "sg\ABC\": "src/"
        }
    }
}

Xyz.php:

<?php namespace sgABC;
    class Xyz
    {}
?>

test.php:

<?php namespace sgABC;
    use sgABCXyz;
    $a = new Xyz();
?>

即使运行composer install没有显示错误,但当运行代码时,我会立即得到这个错误

$ php test.php 
PHP Fatal error:  Class 'sgABCXyz' not found in /dir/x/test.php on line 5
Fatal error: Class 'sgABCXyz' not found in /dir/x/test.php on line 5

此外,运行composer dump-autoload(如本板中的建议)对没有帮助

您仍然需要包含composer autoload.php文件才能包含加载的库。

您需要自动加载器。。通常是CCD_ 3。

相关内容

  • 没有找到相关文章

最新更新