使用不在require类中

时间:2018-02-10 08:55:56

标签: php symfony

我在Task命名空间中创建了名为App\Entity的类,我的问题出现在我想要使用它的另一个类中,但它没有检测到我的类并给我错误:

  

尝试从命名空间“App \ Entity”加载类“Task”。      您是否忘记了另一个命名空间的“use”语句?

这是我的Task.php

namespace App\Entity;

class Task
{
    protected $task;

    public function getTask()
    {
        return $this->task;
    }

    public function setTask($task)
    {
        $this->task = $task;
    }
}

这是使用DefaultController类的Task

use App\Entity\Task;

class DefaultController
{

}

1 个答案:

答案 0 :(得分:0)

根据您的自动加载器设置,如果您使用的是编辑器,则可以使用自动加载仅在预先构建的类地图中发生 - 称为“权威类图”' (https://getcomposer.org/doc/articles/autoloader-optimization.md)。

因此,当您向源添加类时,预构建的自动加载器无法识别它。尝试运行composer dump以通过标准PSR-0 / PSR-4规则加载自动加载器。

如果您在PSR-0 / PSR-4模式下使用自动加载器,那么您可能没有将该文件放在正确的目录中。