1

好的,所以在尝试获取 cURL 以获取受密码保护的 XML 文件并且完全没有得到任何东西之后,我尝试简化我的代码以查看什么起作用。结果一无所获。这是我的代码:

$ch = curl_init("www.google.com");

curl_setopt($ch, CURLOPT_HEADER, TRUE);
curl_setopt($ch, CURLOPT_VERBOSE, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

curl_exec($ch);

curl_close($ch);

cURL 是沉默的。我的意思是没有任何东西打印到页面上。我肯定启用了它,我的 phpinfo 看起来像这样:

cURL support            enabled
cURL Information            libcurl/7.16.0 OpenSSL/0.9.8a zlib/1.2.3

在 Windows NT 服务器上运行 php 5.2。有什么建议么?

4

1 回答 1

7

关键在这一行:

curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

您告诉 cURL 返回传输结果而不是回显它(默认值)。因此,要么删除该行,要么执行以下操作:

$result = curl_exec($ch);

if ($result === false) {
    echo "Error: " . curl_error($ch);
} else {
    echo $result;
}

如果您在评论中指出 SSL 错误,您可以在 cURL 句柄上设置另一个选项以禁用检查证书:

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
于 2012-06-26T16:38:58.077 回答