Как разрешить угловой формат datepicker до и после публикации?

Используя Angular Material Datepicker, при отправке формы я получил:

2016-02-15T02: 00: 00.000Z

И когда я попробовал форматировать на PHP, как:

date('Y-m-d', strtotime($post['date']))

Я получил:

2016-02-14

И когда дата возвращается к угловой:

success: function(data) { $scope.date = new Date(data.date); }

Я получил:

2016-02-13

Итак, что я делаю не так

[ОБНОВИТЬ]

я кладу date_default_timezone_set($timezone); в моем index.php

Итак, до этого я делал:


$str = date('d/m/Y', strtotime('+2 day', strtotime($post['date'])));
$workaround = new Date($str);

И теперь я изменился на +1 день

Я думаю, что часовой пояс php решил одну из проблем.

1

Решение

Я думаю, что это из-за смены часового пояса. Так как дата от DatePicker выглядит как 2016-02-15T02:00:00.000Z Это означает, что это дата-время, специфичное для UTC, и когда вы отправляете его на сервер, он преобразует его, используя ваш часовой пояс, вызывая предыдущую дату.
Вы можете отправить эту дату на сервер после удаления десятичной части, например

2016-02-15T02: 00: 00

0

Другие решения

Других решений пока нет …