如何将这样的日期时间字符串转换为:2012-09-03 22:00
US Eastern到UTC时区?
答案 0 :(得分:2)
您应该查看文档中的DateTime
对象及其相关函数。
如果输入日期已经是字符串格式,DateTime::createFromFormat()
将帮助您创建对象可以使用的纪元类型整数日期。之后,它只是getTimezone()
和setTimezone()
。
答案 1 :(得分:0)
您可以使用strtotime
将时间戳从DB转换为纪元时间,并将它们包装在一个特殊的CSS类中:
<span class="timestamp"><?php echo strtotime('2012-09-03 22:00'); ?></span>
然后使用一些Javascript(jQuery示例),将unix时期动态转换为语言环境日期时间:
$('.timestamp').each(function(){
var seconds = $(this).html();
var d = new Date(1000 * parseInt(seconds));
var t = (d.getMonth()<9 ? '0':'') + parseInt(d.getMonth()+1) + '/';
t+= (d.getDate()<10 ? '0' : '') + parseInt(d.getDate()) + '/';
t+= parseInt((d.getYear()<1000 ? d.getYear()+1900 : d.getYear())) + ' ';
t+= (d.getHours()<10 ? '0' : '') + d.getHours() + ':' + (d.getMinutes()<10 ? '0' : '') + d.getMinutes();
$(this).html(t);
});
这将以mm/dd/yyyy hh:ii
格式输出日期,相对于浏览器时区。