我想在Codeigniter中将1373892900000
转换为Monday 2013/07/15 8:55 AM
。
但是,通过使用我编写的函数转换时间戳,我一直收到完全不同的结果,请注意:我需要根据不同的时区更改日期,这就是我想用这种方式编写的原因:
public function time_convert($timestamp){
$this->load->helper('date');
date_default_timezone_set('UTC');
$daylight_saving = TRUE;
$timezone = "UM4"; //toronto or new york timezone
$time = gmt_to_local($timestamp, $timezone, $daylight_saving);
$final_time = standard_date('DATE_RFC822', $time);
return $final_time;
}
上述功能的结果是:Sat, 08 Dec 06 01:40:00 +0000
如果我没有将date_default_timezone_set('UTC');
放入上述功能,我会将此日期改为Sat, 08 Dec 06 02:40:00 +0100
。我的codeigniter似乎默认为欧洲/柏林的时区。
有人可以帮我纠正我可能犯过的任何错误吗?
答案 0 :(得分:3)
为什么不使用PHP的日期函数?
public function time_convert($timestamp){
return date('l Y/m/d H:i', $timestamp);
}
对于不同的时区,请使用DateTime对象:
public function time_convert($timestamp, $timezone = 'UTC'){
$datetime = new DateTime($timestamp, new DateTimeZone($timezone));
return $datetime->format('l Y/m/d H:i');
}
认为应该有效。注意:我知道TimeZone类至少需要PHP版本5.20。
答案 1 :(得分:0)
<?php
$time_str=1373892900000;
echo gmdate("fill with your format", $time_str);
?>
你的格式=格式化你的PHP时间,阅读此页面了解详情。
http://php.net/manual/en/function.date.php
http://php.net/manual/en/function.gmdate.php
答案 2 :(得分:0)
看起来好像使用DATE_ATOM格式调用standard_date可能会对您进行排序:
echo unix_to_human(time(), true, 'us'); # returns 2013-07-12 08:01:02 AM, for example
该格式还有许多其他选项,在链接页面上列举。
答案 3 :(得分:0)
这个如何将时间戳转换为日期非常简单:
echo date('m/d/Y', 1299446702);
将时间戳转换为人类可读格式请尝试:
function unix_timestamp_to_human ($timestamp = "", $format = 'D d M Y - H:i:s')
{
if (empty($timestamp) || ! is_numeric($timestamp)) $timestamp = time();
return ($timestamp) ? date($format, $timestamp) : date($format, $timestamp);
}
$unix_time = "1251208071";
echo unix_timestamp_to_human($unix_time); //Return: Tue 25 Aug 2009 - 14:47:51
如果你想把它转换成这样的格式:2008-07-17T09:24:17Z比使用这个方法
<?php
$timestamp=1333699439;
echo gmdate("Y-m-d\TH:i:s\Z", $timestamp);
?>
有关日期的详细信息: http://php.net/manual/en/function.date.php
答案 4 :(得分:0)
你的时间戳来自客户端的javascript,我猜,因为它似乎是以毫秒为单位。 php时间戳以秒为单位。所以为了得到你想要的答案,首先除以1000。
显示全年会使问题更加明显,因为你会把这一年视为45,506。