php – 如何知道curl_multi_exec中哪个URL失败?
发布时间:2020-05-25 09:16:51 所属栏目:PHP 来源:互联网
导读:我编写了一个类,以便更容易使用多个cURL请求,当我收到404错误或任何其他错误时,我想记录错误. 我已经将CURLOPT_FAILONERROR设置为true. 我目前正在使用curl_multi_info_read(). 这是我的代码: $active = null; do { $multi_exec = curl_multi_exec($this-_mu
|
我编写了一个类,以便更容易使用多个cURL请求,当我收到404错误或任何其他错误时,我想记录错误.
我目前正在使用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_error或 curl_errno函数以检查错误,并且可以使用 curl_getinfo从该句柄中提取URL:curl_getinfo($info['handle'],CURLINFO_EFFECTIVE_URL); (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
