我是python的php新手。在python中,我非常熟悉从网页获取json结果。不管我在php中做什么都行不通。我正在使用的代码是。
<?php
$url = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=hello&safe=off";
$data = json_decode(file_get_contents($url));
echo $data;
?>`
然而这绝对没有。我在做什么有什么不对吗?我也通过ideone.com运行它并得到了这些错误。
`PHP Warning: file_get_contents(): php_network_getaddresses: getaddrinfo failed: Name or service not known in /home/VQMKwy/prog.php on line 3
PHP Warning:file_get_contents(http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=hello&safe=off): failed to open stream: php_network_getaddresses: getaddrinfo failed: Name or service not known in /home/VQMKwy/prog.php on line 3`
答案 0 :(得分:1)
一旦你解决了上面发布的问题(这似乎与你的服务器配置有关,因为file_get_contents
对我来说很好),你会遇到另一个错误。
json_decode
将返回类stdClass的对象。你不能只是echo
。
回显阵列的最快方法是使用
var_dump($data);
除此之外,代码在我的本地机器上运行良好。我刚刚用echo
var_dump
hint posted by Rob应解决问题,但如果没有,如果你在Apache上运行,请尝试运行此命令:
sudo rc.d stop httpd; sudo rc.d start httpd
这将迫使Apache停止并开始更新/etc/resolv.conf