Const 接收另一个常量
Const receiving another constant
为什么PHP/laravel在常量的赋值中即使传递了完整的命名空间也提示"class not found"错误?
我是 运行 使用 php artisan
的后台进程,并且有一个特定的 class 将常量分配给另一个通用 class 的常量。
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;
}
当我执行这样的命令时,它显示消息:
Class 'App\Elasticsearch\Errors' 未找到
当我把 use of class Errors 放在 namespace[=28= 的声明下面时]在FILE_2中运行正常,区别如下:
FILE_2:
namespace App\Services\Exceptions;
use App\Elasticsearch\Errors;
class UpdateDocumentException extends DocumentException
{
const ERROR = Errors::UPDATE_DOCUMENT;
}
我通过 运行 命令解决了这个问题:composer dump-autoload
为什么PHP/laravel在常量的赋值中即使传递了完整的命名空间也提示"class not found"错误?
我是 运行 使用 php artisan
的后台进程,并且有一个特定的 class 将常量分配给另一个通用 class 的常量。
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;
}
当我执行这样的命令时,它显示消息: Class 'App\Elasticsearch\Errors' 未找到
当我把 use of class Errors 放在 namespace[=28= 的声明下面时]在FILE_2中运行正常,区别如下:
FILE_2:
namespace App\Services\Exceptions;
use App\Elasticsearch\Errors;
class UpdateDocumentException extends DocumentException
{
const ERROR = Errors::UPDATE_DOCUMENT;
}
我通过 运行 命令解决了这个问题:composer dump-autoload