php中YYYY-MM-DDThh:mmTZD格式的输出日期


Output date in YYYY-MM-DDThh:mmTZD format in php

我正在构建一个站点地图提交给谷歌更好地通过我的网站爬行。

我在MYSQL数据库中有一个日期列,我希望xml标签<lastmod>包含从MYSQL数据库中获取的YYYY-MM-DDThh:mmTZD格式的日期。

如果MYSQL查询返回2015-07-29,我希望将其打印在YYYY-MM-DDThh:mmTZD format中。然而,我没有在数据库中的时间列,我希望它被设置为12 am根据印度的时区。我试图这样做,但得到incompatible date format错误。

在PHP中使用时区非常容易。下面是一个例子:

// Create a new DateTime object
$date = new DateTime('2000-01-01', new DateTimeZone('Pacific/Nauru'));
// Output
echo $date->format('Y-m-d H:i:sP') . "'n";
// Change timezone
$date->setTimezone(new DateTimeZone('Pacific/Chatham'));
// Output again
echo $date->format('Y-m-d H:i:sP') . "'n";