为什么PHP / laravel甚至在常量值的赋值中传递了完整的名称空间,也提示我“找不到类”错误?
我正在使用php artisan
运行后台进程,并且有一个特定的类将一个常量分配给另一个通用类的常量。
FILE_1:
namespace App\Elasticsearch;
class Errors
{
const UPDATE_DOCUMENT = 'xxx';
}
FILE_2:
namespace App\Services\Exceptions;
class UpdateDocumentException
{
const ERROR = \App\Elasticsearch\Errors::UPDATE_DOCUMENT;
}
当我执行这样的命令时,它显示消息: 未找到“ App \ Elasticsearch \ Errors”类
当我将错误类的 use 放在 FILE_2 中的命名空间声明下方时,它可以正常工作,以下区别如下:
FILE_2:
namespace App\Services\Exceptions;
use App\Elasticsearch\Errors;
class UpdateDocumentException extends DocumentException
{
const ERROR = Errors::UPDATE_DOCUMENT;
}
答案 0 :(得分:1)
我通过运行以下命令解决了此问题: composer dump-autoload