PHP - вручную создать дату, содержащую разницу с гринвичем - PullRequest
2 голосов
/ 18 марта 2011

Я разработал приложение, которое использует PayPal Adaptive Payments, и для вызова Preapproval мне нужно отправить переменные startDate и endDate, которые должны иметь следующий формат:

2004-02-12T15: 19: 21 + 00: 00

Теперь - поскольку приложение является международным, существуют разные часовые пояса, поэтому мне нужно отправлять каждое предварительное утверждение на основе часового пояса конкретного человека - любая идея, как я могу создатьдата в указанном выше формате из стандартной даты mysql (Ymd H: i: s)?

У меня есть таблица различий с гринвичскими значениями (т.е. +01: 00, + 02:00), из которых значениясвязаны с пользователем, поэтому я могу передать его в качестве параметра методу, который будет создавать дату и время.

Я думаю, что стоит также упомянуть, что я настроил часовой пояс по умолчанию в конфигурации, используя:

date_default_timezone_set ('UTC');

Любая помощь будет высоко ценится.

1 Ответ

1 голос
/ 18 марта 2011

Может быть, я неправильно понял ваш вопрос ... Но вы можете рассчитать время каждого пользователя, проанализировав разницу в '+2: 00' к часам, и использовать его следующим образом:

date('c', strtotime('+2 hours'));

Если время вашего сервера указано в формате UTC, это дает вам текущее время для вашего пользователя +2: 00

Для пользовательской даты вы делаете date('c', strtotime('+2 hours', strtotime($customDate)));

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...