PHP
Guzzle

[Guzzle]Guzzleを使って並列処理を書く

More than 1 year has passed since last update.


Guzzleでの並列処理

並列処理はどうやってやるのか調べた。

本当に基本的な使い方だと思いますが、忘れないように残しておく。

Guzzle : https://github.com/guzzle/guzzle

Document : http://docs.guzzlephp.org/en/latest/


GuzzleはComposerなどでインストールしてください



処理

<?php

$client = new \GuzzleHttp\Client();

$promises[] = $client->requestAsync('GET', 'http://hogehoge');
$promises[] = $client->requestAsync('GET', 'http://hogehoge');
$promises[] = $client->requestAsync('GET', 'http://hogehoge');
$promises[] = $client->requestAsync('GET', 'http://hogehoge');
$promises[] = $client->requestAsync('GET', 'http://hogehoge');

$responses = \GuzzleHttp\Promise\all($promises)->wait();

$result = [];
foreach ($responses as $response) {
$result[] = $response->getBody()->getContents();
}

var_dump($result);

指摘ありましたら、宜しくお願い致します。