【发布时间】:2015-01-17 15:41:24
【问题描述】:
我想从 Google 获取结果。根据 Google 的 Web API 文档,这是我的代码。
<!DOCTYPE html>
<html>
<head>
<title>testing</title>
</head>
<body>
<?php
$page = 10;
$query = "Baby";
$url = "https://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=".$query;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)');
$body = curl_exec($ch);
curl_close($ch);
$json = json_decode($body);
var_dump($json);
echo $json;
?>
</body>
</html>
但是我在页面上没有得到任何东西,也没有错误。谁能帮我弄清楚为什么它不起作用以及如何捕获错误?
【问题讨论】:
-
你检查过错误日志吗?你检查过你的服务器上安装的 curl 扩展吗?
-
您必须检查 curl 本身的错误。在关闭句柄之前检查
echo curl_error($ch);。 -
预期输出时 PHP 中的空白页,表示查看错误日志。始终在开发和测试代码时,位于脚本顶部
error_reporting(E_ALL); ini_set('display_errors', 1); -
或者干脆使用:$json = file_get_contents("ajax.googleapis.com/ajax/services/search/web?v=1.0&q=" . $query );
标签: php curl google-search-api