php - win7 64位 curl_exec($ch) 返回一直是false
PHP中文网
PHP中文网 2017-05-16 13:11:03
0
2
1207

同事的win10上面可以得到正常的值,但是在我在win7上curl_exec($ch)的返回值一直是false。然后尝试打出curl_error($ch)是一个string(0) ""。

我看了下本地php的配置 curl应该已经开启了


之后我照着

http://php.net/manual/zh/curl...

下面的方法将
libeay32.dll
libssh2.dll
ssleay32.dll

这三个文件放到

C:\Program Files\Apache Software Foundation\Apache2.4\bin

这个目录下,重启apache之后得到的还是为false。

我的php版本是5.6.23。并且已经基本排除了代码的问题。想问问诸位有没有也遇到过类似情况的,最后都怎么解决的。感激不尽。

下面是详细代码。

$ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    $headers=array(
        // 'W-ACCESS-TOKEN: '.$access_token,
        'Content-Type: application/json'
    );
    // addd header
    curl_setopt($ch, CURLOPT_HTTPHEADER, array_merge($headers,$app_headers));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
    // curl_setopt($ch, CURLOPT_COOKIE, implode(';', $cookies_items));
    curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);

    if($method=='PUT'){
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
    }elseif($method=='DELETE'){
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE");
    }
    
    $data = curl_exec($ch);
    curl_close($ch);
    return $data;

再次更新,现在捕获异常之后报出以下错误

Curl failed with error #7: Failed to connect to auc.qa2.test.yiran.com port 80: Timed out


4月21日更新
已解决。
没有配host。配上了就能连上了。

PHP中文网
PHP中文网

认证高级PHP讲师

모든 응답(2)
巴扎黑

Timeout으로 인해 연결할 수 없습니다. 이 URL을 수동으로 열어서 확인해 보세요. .

習慣沉默

코드를 게시하고 컬_setopt가 CURLOPT_RETURNTRANSFER를 true로 설정했는지 확인하세요

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!