【发布时间】:2012-04-16 15:16:17
【问题描述】:
我正在尝试用 PHP 构建一个基本的 REST 客户端,以此来让自己熟悉依赖注入容器的概念。最终,我想做这样的事情:
$client = new RestClient();
$client->getService('user', array('id, optional fields...'));
但我也希望能够指定应该处理请求的对象(例如,如果我想使用 fopen 而不是 curl)。
根据我目前阅读的内容,实现此目的的正确方法是:
$request = new ServiceDefinition(
'Curl',
array('...')
);
$user = new ServiceDefinition('User',
array(new ServiceReference('request'))
);
$container = new ServiceContainer(array(
'request' => $request,
'user' => $user,
));
我的问题是:有没有更简单的方法来建立用户对象和请求对象之间的依赖关系? (可能是 RestClient() 上的基本 setter 注入?)
提前致谢。
【问题讨论】:
标签: php rest dependencies containers