【发布时间】:2013-08-21 08:28:43
【问题描述】:
我正在尝试使用 cURL 检索 Google 日历 XML 以在我的应用程序中显示它。
日历是公开的,可以通过浏览器直接访问:
https://www.google.com/calendar/feeds/en.usa%23holiday%40group.v.calendar.google.com/public/basic
当我试图从我的程序中获取它时,它奇怪地以德语返回。这里是
下面是我的代码:
$xml = NULL;
$url = 'https://www.google.com/calendar/feeds/en.usa%23holiday%40group.v.calendar.google.com/public/basic';
$crl = curl_init();
curl_setopt ($crl, CURLOPT_URL, $url);
curl_setopt ($crl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($crl, CURLOPT_CONNECTTIMEOUT, 15);
$xml = curl_exec($crl);
curl_close($crl);
echo '<pre>';
print_r($xml);
exit;
if($xml){
$xml = simplexml_load_string($xml);
}
当从浏览器运行 URL 时,它以英文返回。我以为是服务器上的cURL代理设置的原因,后来尝试添加这两行,但是没有意义。
curl_setopt ($crl, CURLOPT_HTTPGET, TRUE);
curl_setopt ($crl, CURLOPT_HTTPPROXYTUNNEL, FALSE);
有什么想法吗?请帮忙。
【问题讨论】:
-
追加网址
..../basic?hl=en? -
您的服务器位置可能是原因。但正如 Bora 所说,它是一种以特定语言请求的简单解决方案。
-
@Bora,是的,
?hl=en确实有效。谢谢!为什么不添加答案?但是我想知道为什么当我从浏览器运行时它会以英文返回而没有hl=en。是因为我的位置吗? -
@Sithu,我想您的服务器位于德国。
标签: php curl google-calendar-api