gpt4 book ai didi

php - 如何知道哪个 URL 在 curl_multi_exec 中失败?

转载 作者:可可西里 更新时间:2023-11-01 13:16:28 25 4
gpt4 key购买 nike

我编写了一个类,以便更轻松地使用多 cURL 请求 我想在收到 404 错误或任何其他错误时记录错误。我已经将 CURLOPT_FAILONERROR 设置为 true。

我目前正在使用 curl_multi_info_read()

这是我的代码:

$active = null;
do {
$multi_exec = curl_multi_exec($this->_multi_handle, $active);
} while ($multi_exec == CURLM_CALL_MULTI_PERFORM);

while ($active && $multi_exec == CURLM_OK) {
if (curl_multi_select($this->_multi_handle) != -1) {
do {
$multi_exec = curl_multi_exec($this->_multi_handle, $active);
$info = curl_multi_info_read($this->_multi_handle);
if ( $info['result'] != 0 ) {
$this->_errors[] = $info; // currently storing the whole array
}
} while ($multi_exec == CURLM_CALL_MULTI_PERFORM);
}
}

错误的结果是这样的数组:

Array
(
[0] => Array
(
[msg] => 1
[result] => 22 // on success this is 0
[handle] => Resource id #4 // does this help in finding the url if I have the handle ID ?
)

那么我怎样才能得到发生错误的URL呢?这只给了我句柄资源 ID

提前致谢。

最佳答案

根据您的实际需要,您可以将此句柄传递给 curl_errorcurl_errno函数来检查错误,你可以使用curl_getinfo从该句柄中提取 URL:

curl_getinfo($info['handle'], CURLINFO_EFFECTIVE_URL);

关于php - 如何知道哪个 URL 在 curl_multi_exec 中失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12653731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com