Php 卷曲误差:";不能';t解析主机';search.twitter.com'&引用;

Php 卷曲误差:";不能';t解析主机';search.twitter.com'&引用;,php,curl,twitter,Php,Curl,Twitter,当尝试使用cUrl和PHP连接到Twitter api时,出现以下错误: 无法解析主机“search.twitter.com” 在它正常工作之前,请求在我的浏览器中工作。当尝试连接到example.com时,我确实获得了该页面。我还尝试了以下代码,得到了相同的错误: $_h = curl_init();curl_setopt($_h, CURLOPT_HEADER, 1); curl_setopt($_h, CURLOPT_RETURNTRANSFER, 1); curl_setopt($_h,

当尝试使用cUrl和PHP连接到Twitter api时,出现以下错误:

无法解析主机“search.twitter.com”

在它正常工作之前,请求在我的浏览器中工作。当尝试连接到example.com时,我确实获得了该页面。我还尝试了以下代码,得到了相同的错误:

$_h = curl_init();curl_setopt($_h, CURLOPT_HEADER, 1);
curl_setopt($_h, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($_h, CURLOPT_HTTPGET, 1);
curl_setopt($_h, CURLOPT_URL, 'http://www.example.com' );
curl_setopt($_h, CURLOPT_DNS_USE_GLOBAL_CACHE, false );
curl_setopt($_h, CURLOPT_DNS_CACHE_TIMEOUT, 2 );

var_dump(curl_exec($_h));
var_dump(curl_getinfo($_h));
var_dump(curl_error($_h));
这可能是DNS问题吗?使用PHP获取JSON数据还有其他选项吗

编辑:这是最初出错的代码:

$json_url = "https://search.twitter.com/search.json?q=" . 'bitterrific' . "&rpp=10&result_type=all";
    $ch = curl_init();
    $timeout = 100;
    curl_setopt($ch,CURLOPT_URL,$json_url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
    $data = curl_exec($ch);
    //curl_close($ch);
    $content = json_decode($data);
    $output = array();
    echo "DATA: ".curl_error($ch);

谢谢

我没有发现你的代码有问题

此外,search.twitter.com还可以:

$ host search.twitter.com
search.twitter.com is an alias for s.twitter.com.
s.twitter.com has address 199.59.148.11
s.twitter.com has address 199.59.149.243
s.twitter.com has address 199.59.148.84
您应该检查服务器的DNS设置

您还需要使用PHP获取json数据的其他方法。PHP接受用作远程文件的URL。因此,您可以尝试以下方法:

$content = file_get_contents("https://search.twitter.com/search.json?q=" . 'bitterrific' . "&rpp=10&result_type=all");
$content = json_decode($content);
var_dump($content);

尝试将第二个名称服务器添加到/etc/resolv.conf 例如:名称服务器8.8.8.8 哪个是谷歌名称服务器

我在使用codebird.php时发现了同样的问题。我被暂停了。

我们的名称服务器工作正常,但似乎偶尔会超时一次。当我添加第二个名称服务器时,问题就消失了。

请更新您的代码以反映出什么不起作用-例如,我在您的代码片段中没有看到
search.twitter.com
。为什么要弄乱curl的dns设置?默认值应该可以正常工作。