В проект надо интегрировать API, делаю через cURL.
Т.к. надо получить 5 разных результата из API (отличие в запросах только data аргументы), как я понял получается 5 cURL отдельных запроса надо делать?
Вопрос:
1. Как мне получить конечные результат всех запросов а один массив? Т.е. прогоняю все 5 cURL запросов, собираю в один массив и вывожу себе.
2. Как исключить что cURL может подвиснуть, одновременно если 5 запросов делать, если подвисло повторить попытку запроса.
Спасибо.
$location = "mars,jupiter,earth,sun,moon"; - это и есть те 5 вариантов запроса.
CODE (htmlphp):
скопировать код в буфер обмена
скопировать код в буфер обмена
- public static function action_GetHuman($passport_id){
- // Array
- $authToken = "SECRET";
- $passport_id = "0000000001";
- // $location = "mars,jupiter,earth,sun,moon";
- $location = "mars";
- // curl
- $curl = curl_init();
- curl_setopt_array($curl, array(
- CURLOPT_URL => "https://site.com?authToken=".$authToken."&passport_id=".$passport_id."&location=".$location,
- CURLOPT_RETURNTRANSFER => true,
- CURLOPT_ENCODING => "",
- CURLOPT_TIMEOUT => 30000,
- CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
- CURLOPT_CUSTOMREQUEST => "GET",
- CURLOPT_SSL_VERIFYPEER => true,
- CURLOPT_HTTPHEADER => array(
- 'Content-Type: application/x-www-form-urlencoded',
- ),
- ));
- $response = curl_exec($curl);
- $err = curl_error($curl);
- curl_close($curl);
- if ($err) {
- echo "cURL Error #:" . $err;
- } else {
- print_r(json_decode($response));
- }
- $result = json_decode($response, true);
- return $result;
- }