<?php
error_reporting(-1);
$config = array
(
"siteURL" => "http://domain.com",
"loginCheck" => "checkuser.php",
"userAgent" => "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.204 Safari/534.16"
);
$postFields = "username=user&password=pass&submit= Login ";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $config['siteURL'] . $config['loginCheck']);
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_USERAGENT, config['userAgent']);
curl_setopt($ch, CURLOPT_REFERER, config['siteURL']);
$content = curl_exec($ch);
curl_close($ch);
echo $content;
?>
我期望这里应该会输出curl的结果,但实际上并没有。我做错了什么吗?
var_dump($content);
、curl_setopt($ch, CURLOPT_HEADER, 1);
和var_dump(curl_getinfo($ch));
。你可能会收到一个零长度的响应,或者 cURL 可能会遇到某种连接错误。请注意,这些工具可能需要进行进一步的修改才能调试您的代码。 - DereleasedcURL
访问的页面设置正确了吗?这是我过去犯过很多次的一个愚蠢错误。 - esqewregister_shutdown_function()
与error_get_last()
结合使用来创建一个简单(但非常有用)的“调试器”脚本。 - Christianerror_reporting()
函数似乎会将 -1 转换为 E_ALL。主要区别在于可以将 E_PARSE 从 E_ALL 中移除,但无法将 E_PARSE 从 -1 中移除。 :) - Christian