$request->addPostFile('upload2', __FILE__); $response = $http->exec($request); echo number_format(strlen($response)) . ' bytes', PHP_EOL; echo $response, PHP_EOL; echo '9. multiple get requests in parallel ... ', PHP_EOL; // define callback as normal function function test_cb($res, $req, $key) { echo ' ', $req->getUrl(), ', ', number_format(strlen($res)), ' bytes in ', sprintf('%.4f', $res->timeCost), 's', PHP_EOL; // even you can redirect HERE if ($key === 'baidu' && !strstr($req->getUrl(), 'czxiu')) { $res->redirect('http://www.czxiu.com'); } } $http->setParser('test_cb'); $responses = $http->mget(['baidu' => 'http://www.baidu.com', 'sina' => 'http://news.sina.com.cn', 'qq' => 'http://www.qq.com']); echo '10. process multiple various requests in parallel ... ', PHP_EOL; // define callback as object class testCb implements \hightman\http\ParseInterface { public function parse(Response $res, Request $req, $key) { echo ' ', $req->getMethod(), ' /', $key, ' finished, ', number_format(strlen($res)), ' bytes in ', sprintf('%.4f', $res->timeCost), 's', PHP_EOL; } } // construct requests $requests = []; $requests['version'] = new Request('http://api.mcloudlife.com/api/version', 'POST'); $requests['baidu'] = new Request('http://www.baidu.com/s?wd=php'); $request = new Request('http://api.mcloudlife.com/open/auth/token'); $request->setMethod('POST');