0

我正在尝试使用新值更新时间戳的时间(小时和分钟),但由于某些原因它返回 -19 小时,这是为什么呢?我做错了吗?

$hour_created = $_REQUEST['hour_created'];     // ex.: 13
$minute_created = $_REQUEST['minute_created']; // ex.: 00

$updated_timestamp = strtotime("$hour_created:$minute_created", $_REQUEST['_timestamp']);
4

2 回答 2

1

采用:

$updated_timestamp = strtotime(date("d/m/y", $_REQUEST['_timestamp'])." $hour_created:$minute_created");

如果这不起作用,您的服务器可能需要反向日期顺序(美国):

$updated_timestamp = strtotime(date("m/d/y", $_REQUEST['_timestamp'])." $hour_created:$minute_created");

如果要替换小时和分钟并留下日期。

编辑:对不起,我的错误,现在修正。

于 2012-07-04T17:16:53.527 回答
0

在同事的帮助下,我最终做到了:

$day_value = 60 * 60 * 24;
$offset    = intval($_REQUEST['_offset']) * 60;

// Article creation date
$time_created = ($_REQUEST['hour_created'] * 60 * 60) + ($_REQUEST['minute_created'] * 60);
$date_created = substr($_REQUEST['_timestamp'], 0, -3) - $offset;
$date_created = floor($date_created / $day_value) * $day_value + $time_created + $offset;

偏移量是 javascript 函数new Date().getTimezoneOffset(); 的结果:时间戳是$.datepicker({altFormat: '@'});

于 2012-07-05T10:15:49.237 回答