我使用Zend框架的GData的谷歌日历API和日期时间输出在RFC3339(看起来像这样:2012-01-19T22:00:00.000-08:00)。 我需要什么PHP代码,以便将其转换成UTC添加,使其看起来像这样:2012年1月19日,8 pm-11pm? 我发现的PHP代码,RFC日期转换为字符串,但我不知道有足够的了解PHP是能够改变的代码使用Zend的GData公式工作......你会在下面我的代码看,“约会“被称为‘何时’......因此任何代码都这两个连接不知何故...任何帮助表示赞赏!
<?php
$path = '/home/ZendGdata/library';
$oldPath = set_include_path(get_include_path() . PATH_SEPARATOR . $path);
require_once 'Zend/Loader.php';
Zend_Loader::loadClass('Zend_Gdata');
Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
Zend_Loader::loadClass('Zend_Gdata_Calendar');
// User whose calendars you want to access
$user = 'my@email.com';
$pass = 'mypassword';
$service = Zend_Gdata_Calendar::AUTH_SERVICE_NAME; // predefined service name for calendar
$client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service);
$service = new Zend_Gdata_Calendar($client);
$query = $service->newEventQuery();
// Set different query parameters
$query->setUser('mycalendarID');
$query->setVisibility('private');
$query->setProjection('full');
$query->setOrderby('starttime');
// Start date from where to get the events
$query->setStartMin('2012-01-01');
// End date
$query->setStartMax('2050-03-15');
// Get the event list
try {
$eventFeed = $service->getCalendarEventFeed($query);
} catch (Zend_Gdata_App_Exception $e) {
echo "Error: " . $e->getMessage();
}
echo "<ul>";
foreach ($eventFeed as $event) {
echo "<tr>";
foreach ($event->when as $when) {
echo "<td>" . $when->startTime . "</td>";
}
echo "<td>" . $event->content . " </td>";
$where=$event->Where;
foreach($where as $eventplace)
{
echo "<td>" . $eventplace . " </td>";
}
}
echo "</tr>";
echo "</ul>";
?>
感谢您对这个信息@vascowhite。
两个问题:
输出原来是这样的:字符串(23)“20 2012年1月:06:00”
我拉着从我的谷歌日历此信息,并且它输出到我的html页面...我不是不通过这个PHP创建新的事件......所以这段代码简单地转换,你写的日期,也没有转换这是从这个代码把我的谷歌日历事件日期:
foreach ($event->when as $when) { echo "<td>" . $when->startTime . "</td>"; }
你知道怎么做吗?
谢谢你,苏珊