$v) { //输入参数处理 $post_data = $data[$k]; if ($data_handle == 1) { // 中文不转为unicode ,对应的数字 256 $post_data = json_encode($post_data, JSON_UNESCAPED_UNICODE); } else if ($data_handle == 2) { // 编码 URL 字符串 $post_data = urldecode(json_encode($post_data, JSON_UNESCAPED_UNICODE)); } else if ($data_handle == 3) { // 生成 URL 编码的查询字符串 $post_data = http_build_query($post_data); } // 初始化一个cURL会话 $ch[$k] = curl_init(); // 设置cURL传输选项 curl_setopt($ch[$k], CURLOPT_URL, $url[$k]); curl_setopt($ch[$k], CURLOPT_POST, true); curl_setopt($ch[$k], CURLOPT_POSTFIELDS, $post_data); curl_setopt($ch[$k], CURLOPT_HTTPHEADER, $header); // 将curl_exec()获取的信息以文件流的形式返回,而不是直接输出 curl_setopt($ch[$k], CURLOPT_RETURNTRANSFER, true); curl_setopt($ch[$k], CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch[$k], CURLOPT_SSL_VERIFYHOST, false); // 向curl批处理会话中添加单独的curl句柄 curl_multi_add_handle($mh, $ch[$k]); } $running = null; do { // 延迟执行当前脚本 10 毫秒 (10000微秒) usleep(10000); // 运行当前 cURL 句柄的子连接 curl_multi_exec($mh, $running); } while ($running > 0); // 定义返回结果 $result = []; foreach ($url as $k => $v) { // 则返回获取的输出的文本流 $result[$k] = curl_multi_getcontent($ch[$k]); // 处理返回值 if ($result_handle == 1) { $result[$k] = json_decode($result[$k], true); } // 移除curl批处理句柄资源中的某个句柄资源 curl_multi_remove_handle($mh, $ch[$k]); } // 关闭一组cURL句柄 curl_multi_close($mh); return $result; }