PHP-DI定义未通过定义数组中的条目名称建立索引

问题描述 投票:0回答:1

在使用邮递员在Slim3中发布JWT身份验证的电子邮件和密码时,出现以下致命错误。我该如何解决?

Fatal error: Uncaught Exception: The PHP-DI definition is not indexed by an entry name in the definition array in
C:\new_xampp\htdocs\project\vendor\php-di\php-di\src\Definition\Source\DefinitionArray.php:45

Stack trace:

0 C:\new_xampp\htdocs\project\vendor\php-di\php-di\src\ContainerBuilder.php(148):
DI\Definition\Source\DefinitionArray->__construct(Array, Object(DI\Definition\Source\ReflectionBasedAutowiring))

1 [internal function]: DI\ContainerBuilder->DI{closure}(Array)

2 C:\new_xampp\htdocs\project\vendor\php-di\php-di\src\ContainerBuilder.php(143): array_map(Object(Closure), Array)

3 C:\new_xampp\htdocs\project\public\index.php(33): DI\ContainerBuilder->build()

4 {main}
thrown in C:\new_xampp\htdocs\project\vendor\php-di\php-di\src\Definition\Source\DefinitionArray.php on line45
php slim-3 php-di
1个回答
0
投票

为此可能会有点晚,但是对于任何面临完全相同的错误的人,问题可能是在定义数组中缺少索引键。例如:

错误

$containerBuilder->addDefinitions(array(
  function(Container $container){
     //Code 
  }
));

正确

$containerBuilder->addDefinitions(array(
  'myAwesomeClass' => function(Container $container){
     //Code 
  }
));
© www.soinside.com 2019 - 2024. All rights reserved.