PHP SimpleXML дата / время набор данных / преобразование часового пояса

Нужны даты & раз я получаю из Highrise API через PHP / cURL для вывода в EST.

// functions.php

function hr_xml($acct, $path) {
// HTTP Authentication
$url = curl_init('https://' . $acct . '.highrisehq.com/' . $path . '.xml');
curl_setopt($url, CURLOPT_RETURNTRANSFER, true);
curl_setopt($url, CURLOPT_USERPWD, '..................:x');

curl_setopt($url, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($url, CURLOPT_SSL_VERIFYHOST, 0);

$data = curl_exec($url);
curl_close($url);

$xml = new SimpleXMLElement($data);
return $xml;
}

function get_day($tdVal) {
$input = substr($tdVal, 0, 10);
$date = DateTime::createFromFormat("Y-m-d", $input);
$date->setTimeZone(new DateTimeZone('EST'));
return $date->format("l");
}

function get_time($tdVal) {
$input = substr($tdVal, 11, 5);
$time = DateTime::createFromFormat("H:i",$input);
$date->setTimeZone(new DateTimeZone('EST'));
return $time->format("A g:i");
}

Это работает на моем локальном хосте, где часовой пояс по умолчанию — UTC, но не на моем производственном сервере, где часовой пояс по умолчанию — America / Los_Angeles; там я помещаю время, которое должно быть 10 утра по восточному поясному времени и было 2 часа дня на моем локальном хосте и на производстве, прежде чем я добавил биты setTimeZone, на моем локальном хосте теперь то, что должно быть 10 часов утра, это 10 часов утра, а на производстве сейчас 5 часов вечера. Что за черт.

0

Решение

Задача ещё не решена.

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

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

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector