Ters Saat dilimi ofset

1 Cevap php

Ben bir saat dilimi isim var ve ben diliminin adı, ofset çift istiyorum.

Örneğin, Asya / Dubai I -4 o ters istiyorum ... ve EDT çözmüş, 4 olduğunu

Dil: PHP

İşte benzeyeceği ne bir örnek var:

$timezone = "Asia/Dubai"
$offset = $timezone->getOffset();
$offset 0 - $offset;
$timezone = $offset->getTimeZone();

Output: EDT

1 Cevap

(PHP 5> = 5.2.0)

UTC offset almak için

<?php
$offUTC = new DateTime('now', new DateTimeZone('Asia/Dubai'));

echo $offUTC->getOffset(); // in seconds
echo ($offUTC->getOffset()/3600); // in hours
?>

İki keyfi bölgeleri arasındaki zaman farkını almak için

<?php
$timezoneDubai = new DateTimeZone("Asia/Dubai");
$timezoneEDT = new DateTimeZone("America/New_York"); // note EDT may work, support is not clear

$datetimeDubai= new DateTime("now", $timezoneDubai);
$datetimeEDT = new DateTime("now", $timezoneEDT);

$timeOffset = $datetimeEDT->getOffset($datetimeDubai);

echo $timeOffset; // in seconds
echo ($timeOffset/3600) // in hours
?>

Ben Amacınız ne% 100 emin değilim, ama bu size yardımcı olacaktır. Ayrıca burada DateTime işlevleri daha fazla kontrol etmek için çekinmeyin: http://www.php.net/manual/en/book.datetime.php