Часовой пояс даты начала предварительного утверждения Paypal?

Я настраиваю приложение с помощью Paypal Adaptive Payments.

В настоящее время я реализую вызов Preapproval, и в спецификации указано, что StartDate не может быть раньше сегодняшнего дня.

Имея это в виду ... по какому часовому поясу они проверяют это по?

В API SDK есть это в примере:

$currDate = getdate();
$startDate = $currDate['year'].'-'.$currDate['mon'].'-'.$currDate['mday'];
$startDate = strtotime($startDate);
$startDate = date('Y-m-d', mktime(0,0,0,date('m',$startDate),date('d',$startDate),date('Y',$startDate)));
$endDate = add_date($startDate, 1);

Однако эта дата может отличаться в зависимости от часового пояса сервера, отправляющего запрос .

У кого-нибудь есть идеи, как гарантировать отсутствие проблем?

Редактировать с наградой:

По состоянию на 15 декабря мы столкнулись с этим как с ошибкой. Мы используем время в формате UTC, и как только наступает новый день в формате UTC, платежи начинают сбоить.

Я использую приведенный выше код в следующем месте:

$preapprovalRequest->startingDate = $startDate;
$preapprovalRequest->endingDate = $endDate;

Что мне нужно, чтобы эта работа работала?

Редактировать 2:

Да, часовой пояс настроен как UTC, мы сделали это намеренно, чтобы все время информация в нашей базе данных хранится без часового пояса.

По сути, я пытаюсь понять, как указать, что дата, которую я отправляю в Paypal, находится в UTC, а не в каком-либо часовом поясе, в котором они находятся.

Редактировать 3:

https: // cms .paypal.com / us / cgi-bin /? cmd = _render-content & content_ID = developer / e_howto_api_APPreapproval

Существует API, и он говорит следующее

Начальная дата и конечная дата могут быть в eiter Zulu или смещении по Гринвичу { {1}} форматы.как в следующих примерах: 2010-09-10Z 2010-09-10T17: 24: 03.874-07: 00

По сути, мне нужен приведенный выше код, чтобы вывести что-то подобное указав, что я использую UTC ...

6
задан Brett Allen 15 December 2011 в 23:57
поделиться