Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用固定结果将字符串日期转换为时间戳,将时间戳转换为日期_Php_Date - Fatal编程技术网

Php 使用固定结果将字符串日期转换为时间戳,将时间戳转换为日期

Php 使用固定结果将字符串日期转换为时间戳,将时间戳转换为日期,php,date,Php,Date,我有这样一个字符串日期:2015/12/20 13:58:59 我尝试转换时间戳: $idate = $user->multiexplode(array("/"," ",":"),strip_tags("2015/12/20 13:58:59")); //mktime( $hour , $minute , $second , $month , $day , $year , $is_dst ); $timestamp = mktime($idate[3],$idate[4],$idate[

我有这样一个字符串日期:
2015/12/20 13:58:59

我尝试转换时间戳:

$idate = $user->multiexplode(array("/"," ",":"),strip_tags("2015/12/20 13:58:59"));

//mktime( $hour , $minute , $second , $month , $day , $year , $is_dst );
$timestamp = mktime($idate[3],$idate[4],$idate[5],$idate[1],$idate[2],$idate[0]);
现在我尝试转换真实日期:

echo 'new date: '.jdate('Y/n/j H:i:s',$timestamp);
好的…它可以工作,但有一个问题

根据时间服务器,我得到可变时间

例如位置+1 GMT:2015/12/20 14:58:59

格林尼治时间-1:2015/12/20 11:58:59


我希望所有服务器都能再次打印
2015/12/20 13:58:59

您可以使用
DateTime
类及其方法将日期和时间转换为unix时间戳。并使用
strftime()
将unix时间戳转换回所需格式,如下所示:

$datetime = "2015/12/20 13:58:59";

// covert timestamp
$unixdatetime = DateTime::createFromFormat('Y/m/d H:i:s', $datetime)->getTimestamp();
echo $unixdatetime . "<br />";  // 1450616339

// now format the unix timestamp
$formatted_datetime = strftime("%Y/%m/%d, %H:%M:%S",$unixdatetime);
echo $formatted_datetime;  // 2015/12/20, 13:58:59
以下是参考资料:

使用此代码

<?php

$date = '2015/12/20 13:58:59';

//convert to timestamp
$timestamp = strtotime($date);

echo $timestamp;

//convert timestamp back to datetime
$date_again = date('Y/m/d H:i:s', $timestamp);

echo $date_again;

?>

<?php

$date = '2015/12/20 13:58:59';

//convert to timestamp
$timestamp = strtotime($date);

echo $timestamp;

//convert timestamp back to datetime
$date_again = date('Y/m/d H:i:s', $timestamp);

echo $date_again;

?>