PHP - 找不到类'我的\ Engine \ Control'

时间:2018-02-23 22:36:51

标签: php

以下代码包含在另一个文件中。 My\Engine\Control的定义要早得多,并且在我的网站中进行了扩展,没有任何问题。但是在这个文件中我得到了错误:

  

致命错误:找不到“我的\引擎\控制”类   第6行/mnt/web/~/classes.php

<?php
namespace My\Engine;

// class Control {}

class RequiresAccount extends Control {
    public function permissions() {

    }

}

然而,当我尝试将一个伪控制类放入(取消注释注释部分)时,我得到了一个不同的错误。

  

致命错误:无法声明类My \ Engine \ Control,因为名称   已经在第47行的/mnt/web/~/Control.class.php中使用

这似乎是不可能的,我无法弄明白。我一直在编写这样的代码而且只是这一次......

所有其他需要扩展\My\Engine\Control的文件都能正常运行。

1 个答案:

答案 0 :(得分:0)

您似乎使用了一些自定义自动加载逻辑和某种优化器,它将所有类放在一个文件中。 我建议坚持PSR-4标准&amp; Composer库来支持和维护它。

通过这种方式,您的文件将被组织,并且编辑器将负责正确处理加载文件和优化生产的加载过程。您需要做的就是将./vendor/autoload.php文件包含到项目中,并在composer.json文件中定义自动加载策略。