【发布时间】:2013-03-28 18:00:28
【问题描述】:
我正在尝试使用以下代码执行 curl。
mainFunction{
.
.
$url = strtolower($request->get('url', NULL));
$html_output= $this->startURLCheck($url);
.
.
}
function startURLCheck($url)
{
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$html_output = curl_exec($ch);
}
当我直接给出字符串 URL 时,这工作正常。但是后来我通过一个函数 curl 没有执行字符串数据。 curl_error 也没有显示错误。我为字符串尝试了许多编码和解码方法,结果相同。我做错了吗?我在 Windows 上使用 XAMPP 服务器。
在从另一个函数的 HTML 发布请求中获取 URL 后,我将 URL 传递给该函数。
【问题讨论】:
-
$url 超出您的范围:php.net/manual/en/language.variables.scope.php 也
curl_error()将提供有关 curl 调用中出现问题的更多启发性信息 -
你能添加你用来定义函数的语法吗?
-
确保你的函数类似于 runCurl($url) { ... } 然后在你的代码中你可以执行 runCurl('foo/bar');
-
@Pekka : CURL_ERROR 没有显示任何消息或错误号
-
@ManojSreekumar 当您将
http://www.google.com作为来自另一个函数的 HTML 发布请求的 URL 变量传递时,它是否有效?