卷曲超时小于1000毫秒总是失败?

Tro*_*ott 9 php curl connection-timeout

此代码始终失败(即$result布尔值false):

     $ch = curl_init();
     curl_setopt($ch, CURLOPT_URL, $path);
     curl_setopt($ch, CURLOPT_HEADER, TRUE);
     curl_setopt($ch, CURLOPT_NOBODY, TRUE);
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
     $curl_version = curl_version();

     curl_setopt($ch, CURLOPT_CONNECTTIMEOUT_MS, 999);

     $result = curl_exec($ch);
     curl_close($ch);
Run Code Online (Sandbox Code Playgroud)

此代码始终成功(即,$result是包含标头的字符串):

     $ch = curl_init();
     curl_setopt($ch, CURLOPT_URL, $path);
     curl_setopt($ch, CURLOPT_HEADER, TRUE);
     curl_setopt($ch, CURLOPT_NOBODY, TRUE);
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
     $curl_version = curl_version();

     curl_setopt($ch, CURLOPT_CONNECTTIMEOUT_MS, 1000);

     $result = curl_exec($ch);
     curl_close($ch);
Run Code Online (Sandbox Code Playgroud)

唯一的区别是我将超时从999ms更改为1000ms.

这必须是卷曲中的错误或者我错过的连接超时文档中的某种最小值.这是什么?我的钱是后者.

dev*_*ler 13

来自:http://www.php.net/manual/en/function.curl-setopt.php

尝试连接时等待的毫秒数.使用0无限期等待.如果构建libcurl以使用标准系统名称解析程序,则连接的该部分仍将使用全秒分辨率进行超时,允许的最小超时时间为一秒.