【发布时间】:2011-09-11 13:24:42
【问题描述】:
我在网上找到了一些 PHP 代码,据说它们可以帮助我从我的网站发送一些文本以发布到 Twitter 提要中。
但是,它只是死在 curl_init() 部分。浏览器显示一个空页面(没有任何 HTML 内容),并且代码停止执行。
代码如下:
$url = 'http://twitter.com/statuses/update.xml';
$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, "$url");
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_POST, 1);
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, "status=$body");
curl_setopt($curl_handle, CURLOPT_USERPWD, "$username:$password");
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);
我正在 Ubuntu 11.04 上进行测试,使用 NetBeans(是的,我知道 Netbeans 是为 Java 调试而设计的,但它是免费的,并且有一个非常好的 PHP 调试插件)和 xdebug。我正在本地 Apache 2.2 服务器上进行测试。
我已经尝试运行调试器来查看它失败的地方,并且当代码到达 curl_init() 部分时,调试器也会退出。它只是退出调试器,如上所述,浏览器只显示一个空白页面。
我需要配置或做些什么来让 curl_init() 真正做事吗?
【问题讨论】:
-
你检查过 curl 可用吗?
-
试试这个 $curl_handle = curl_init() or die("DIE !! ");
-
php -m | grep curl检查这个模块的最快方法,如果没有,只需apt-get install php5-curl -
你有 PHP 错误报告吗?
-
顺便说一句 - Twitter 不是正在切换到 oAuth 身份验证吗?如果/当这种情况发生时,这种方法不会被淘汰吗?
标签: php apache twitter curl xdebug