在依赖项中,我将authenticator类添加到容器中:
$container['authenticator']=function ($c) {
return new \App\Auth\LDAPAuthenticator(...);
};
但是当我尝试从App \ Model \ Login类中使用它时,它会搜索App \ Model路径。这怎么可能?
App \ Model \ Login的构造函数:
namespace App\Model;
...
$this->authenticator = $c['authenticator'];
App \ Model \ Login中的方法:
$result = $this->authenticator($args);
错误讯息:
"Call to undefined method App\\Model\\Login::authenticator()
应该尝试调用App \ Auth \ LDAPAuthenticator
一些澄清, 1)这有效:$authenticator = new \App\Auth\LDAPAuthenticator(...)
2)LDAPAuthenticator类是可调用的,因为它具有__invoke方法