С помощью Guzzle do promises предоставляет любую реальную полезность? Кажется, вы должны вызвать wait(). Следующий код (из документов), кажется, ничего не делает сам по себе:
$promise = $client->requestAsync('GET', 'http://httpbin.org/get');
$promise->then(
function (ResponseInterface $res) {
echo $res->getStatusCode() . "\n";
},
function (RequestException $e) {
echo $e->getMessage() . "\n";
echo $e->getRequest()->getMethod();
}
);
Если вы должны позвонить $prom- > wait(), чтобы сделать запрос, какой смысл обещания? Как это действительно отличается от:
$request = new Request('GET', 'http://httpbin.org/get');
$response = $client->send($request);
if ($response
Лучшее, что я могу сказать, единственное преимущество - это удобный подход для определения успешности запросов и отказов. Даже в разделе doc для создания нескольких запросов есть код ниже, который, как представляется, блокирует и выполняет все запросы... возможно, в то же время. Это все, чего я должен ожидать?
// Wait on all of the requests to complete.
$results = Promise\unwrap($promises);