Php 应用绑定仍然导致找不到类
所以我在Php 应用绑定仍然导致找不到类,php,laravel,laravel-4,Php,Laravel,Laravel 4,所以我在routes.php中绑定了这个应用程序: App::bind('HybridAuth', function() { return new Hybrid_Auth(Config::get('hybridauth')); }); 我的控制器上的构造函数: public function __construct(UserRepository $user, HybridAuth $oauth) { $this->user = $user; $this->o
routes.php中绑定了这个应用程序:
App::bind('HybridAuth', function()
{
return new Hybrid_Auth(Config::get('hybridauth'));
});
我的控制器上的构造函数:
public function __construct(UserRepository $user, HybridAuth $oauth)
{
$this->user = $user;
$this->oauth = $oauth;
}
为什么在控制器中仍然出现类HybridAuth not found
错误?它不应该使用我刚才做的应用程序绑定吗。在不知道oAuth类是如何加载(或不是自动加载)的情况下,我猜您可能需要告诉Laravel您的混合身份验证类在哪里。请注意,像这样的绑定(在控制器中加入了Laravel的魔法)并不能代替设置自动加载-PHP仍然需要知道如何找到您的类
App::bind('HybridAuth', function()
{
return new Hybrid_Auth(Config::get('hybridauth'));
});
可能需要变得更像这样:
App::bind('HybridAuth', function()
{
return new \Some\Namespace\Hybrid_Auth(Config::get('hybridauth'));
});
在不知道oAuth类是如何加载(或不是自动加载)的情况下,我猜您可能需要告诉Laravel您的混合身份验证
类在哪里。请注意,像这样的绑定(在控制器中加入了Laravel的魔法)并不能代替设置自动加载-PHP仍然需要知道如何找到您的类
App::bind('HybridAuth', function()
{
return new Hybrid_Auth(Config::get('hybridauth'));
});
可能需要变得更像这样:
App::bind('HybridAuth', function()
{
return new \Some\Namespace\Hybrid_Auth(Config::get('hybridauth'));
});
这主要是因为,当您进行绑定时,实际上并不是为类创建别名,而是为该类的实例创建别名,该类的实例稍后可以通过App::make('HybridAuth')
访问
如果您想要为类本身创建一个别名,就像它看起来是这样,那么继续app/config/app.php
并将其添加到alias
键下。大概是这样的:
App::bind('HybridAuth', function()
{
return new \Some\Namespace\Hybrid_Auth(Config::get('hybridauth'));
});
app/config/app.php
'aliases' => array(
'HybridAuth' => 'Hybrid_Auth',
// ...
),
这主要是因为,当您进行绑定时,实际上并不是为类创建别名,而是为该类的实例创建别名,该类的实例稍后可以通过App::make('HybridAuth')
访问
如果您想要为类本身创建一个别名,就像它看起来是这样,那么继续app/config/app.php
并将其添加到alias
键下。大概是这样的:
App::bind('HybridAuth', function()
{
return new \Some\Namespace\Hybrid_Auth(Config::get('hybridauth'));
});
app/config/app.php
'aliases' => array(
'HybridAuth' => 'Hybrid_Auth',
// ...
),
这是因为绑定不会创建类的别名,而是创建类的实例。如果你想要一个别名,请访问app/config/app.php并将其添加到alias下。我接受这个答案,谢谢!这是因为绑定不会创建类的别名,而是创建类的实例。如果你想要一个别名,请访问app/config/app.php并将其添加到alias下。我接受这个答案,谢谢!