Я пытаюсь создать базовый REST-клиент на PHP как способ познакомиться с концепцией контейнера внедрения зависимостей.В конечном итоге я хотел бы сделать что-то вроде:
$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 ()?)
Заранее спасибо.