PHP:如何获得自定义日期PHP 5.1.6

时间:2016-11-24 07:13:18

标签: php

我在php 5.1.6中有一段代码

是:

$tz = date_default_timezone_set("Asia/Tokyo");
$date = date('2016-11-24 07:27:00 +00');
$date = date_default_timezone_get($tz);
$currentDate = date('F d, Y H:i');

我一直在输出

上获得当前时间
  

2016年11月24日16:09

我怎样才能获得

  

2016年11月24日19:27

谢谢

1 个答案:

答案 0 :(得分:3)

以下代码可以帮助您:

date_default_timezone_set('Europe/London');
$datetime = new DateTime('2016-11-24 07:27:00');
$tokyo_time = new DateTimeZone('Asia/Tokyo');
$datetime->setTimezone($tokyo_time);
echo $datetime->format('F d, Y H:i');

如果您想添加3小时,可以使用以下代码:

$datetime->add(new DateInterval('PT3H'));

所以你的代码如下所示:

date_default_timezone_set('Europe/London');
$datetime = new DateTime('2016-11-24 07:27:00');
$tokyo_time = new DateTimeZone('Asia/Tokyo');
$datetime->setTimezone($tokyo_time);
echo $datetime->format('F d, Y H:i');
$datetime->add(new DateInterval('PT3H'));

更多信息可在以下手册中找到:

PHP 5.1.6

如果它不起作用,请在代码中添加这些行:

$newdate = date('F d, Y H:i', strtotime($date.' + 3 hours'));
echo $newdate;

您的代码如下所示:

$tz = date_default_timezone_set("Asia/Tokyo");
$date = date('2016-11-24 07:27:00 +00');
$date = date_default_timezone_get($tz);
$currentDate = date('F d, Y H:i');
$newdate = date('F d, Y H:i', strtotime($date.' + 3 hours'));
echo $newdate;

有关您可以在PHP:strtotime

中阅读的已使用方法的更多信息