所以在试图实现的IoC,DI,等在Laravel 4,我碰了壁。无论是我误解的东西或做一些可怕的错误,不知道哪个...国际奥委会和接口绑定挂钩22
所以我有一个类Person(“商务舱”,而不是一个模型或库):
namespace Entities;
use Interfaces\Person as PersonInterface;
class Person implements PersonInterface {...}
工厂其具有:
use Interfaces\Person;
...
App::singleton('user', function($app) {
...
$user_object = new Person();
...
});
和别名阵列中:
'Interfaces\Person' => 'Entities\Person'
问题是,不工作,因为Person类无法实现它的接口,因为接口绑定回Person类:
Entities\Person cannot implement Entities\Person - it is not an interface
我似乎在应用程序防止类使用的IoC和接口赶上22日被抓实际实例化。
不知道,如果是相关的,但把
App::bind('Interfaces\Person','Entities\Person');
在routes.php文件的文件似乎并没有做任何事情(但是把它的别名数组中一样)。当然,我在这里做错了事。有任何想法吗?
服务商!这就是我所错过的。现在一切正常。非常感谢。好的接口命名建议;我有太多名为“Person.php”的文件,并将该名称空间别名为“PersonInterface”... – Osan