Мне надо отправить одновременно более одного потока через cURL данные на сервер. Одним потоком я сделал и работает нормально а больше не могу понять как организовать.
Одним потоком сделал так и работает.
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/rss+xml',
'Authorization: OAuth ' . TOKEN
));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $putData);
curl_close($ch);
Многопоточно сделал так но мне кажется что не работает как надо
foreach ($files as $i => $data) {
$curl_arr[$i] = curl_init($url);
curl_setopt($curl_arr[$i], CURLOPT_HTTPHEADER, array(
'Content-Type: application/rss+xml',
'Authorization: OAuth ' . TOKEN
));
curl_setopt($curl_arr[$i], CURLOPT_POST, 1);
curl_setopt($curl_arr[$i], CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_arr[$i], CURLOPT_POSTFIELDS, $putData);
curl_multi_add_handle($multi, $curl_arr[$i]);
}
$running = NULL;
do {
curl_multi_exec($multi, $running);
} while ($running > 0);
foreach ($files as $i => $data) {
curl_multi_remove_handle($multi, $curl_arr[$i]);
}
curl_multi_close($multi);
Скажите пожалуйста что не так делаю.
Примеры нашел только для получение мнгопоточно а отправлять нет.