php - 如何检查 PHP 是否支持 multi_curl?

标签 php windows curl wampserver curl-multi

我有一段使用 cURL 进行发布请求的 PHP 代码,它使用 curl_multi_* 函数来提高性能。

在我托管的 PHP 服务器上一切正常。

但它在我的 WAMPServer 127.0.0.1 上失败了。单个 cURL 请求在 WAMPServer 上工作得很好,但 curl_multi_select() 只会返回 -1,直到脚本最终超时。

代码...是 PHP.net 手册页上关于 curl_multi_exec 的示例 #1:http://www.php.net/manual/en/function.curl-multi-exec.php 这是导致无限循环的片段:

$active = null;

do {
    $mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);

while ($active && $mrc == CURLM_OK) {
    if (curl_multi_select($mh) != -1) {
        do {
            $mrc = curl_multi_exec($mh, $active);
        } while ($mrc == CURLM_CALL_MULTI_PERFORM);
    }
}

在禁用 Vista 防火墙的情况下进行测试。

有谁知道如何让 curl_multi_* 在 WAMPServer 上工作,或者有什么方法可以从 PHP 脚本中检测对 curl_multi_* 的支持,以便我可以进行后备?

最佳答案

使用 function_exists('curl_multi_select') 检测支持。

http://php.net/manual/en/function.function-exists.php

关于php - 如何检查 PHP 是否支持 multi_curl?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11350580/

相关文章:

PHP 将双反斜杠 "\\"替换为单反斜杠 "\"

python - Python 2.6.4 中的 urllib2 : Any way to override windows hosts file?

windows - 用于跨平台并行端口接口(interface)的简单高效的语言

python - curl --noproxy "*"相当于 Python 的请求模块

php - MySQL PHP - 将表单数据插入表中。未知错误

php - 如何使用 Asterisk 获取 Web 应用程序中任何调用的调用持续时间?

c# - 开发以管理员身份运行命令的应用程序

php - Ajax 中的安全性 : How to prevent cURL to post data?

php - 使用 cURL 登录站点并从中获取数据(图像)

php - 数据库设计: best practice for designing a forum table