yes SUNFUNCS_RET_TIMESTAMP does return GMT(0) time
so something like...
$arr = localtime(date_sunset(time(),SUNFUNCS_RET_TIMESTAMP,51.5,0)); // London
$hh = $arr[2];
$mm = $arr[1];
Will give figure out your localtime and daylight saving (BST)
(PHP 5, PHP 7)
date_sunset — Verilen gün ve konum için günbatımı zamanını döndürür
$zamandamgası
, int $biçim
= SUNFUNCS_RET_STRING
, float $enlem
= ini_get("date.default_latitude")
, float $boylam
= ini_get("date.default_longitude")
, float $başucu
= ini_get("date.sunset_zenith")
, float $gmt_farkı
= 0
) : mixed
date_sunset() işlevi, verilen gün
(zamandamgası
) ve konum için günbatımı zamanını
döndürür.
zaman damgası
Günbatımı zamanı alınacak günün zamandamgası
.
biçim
sabit | açıklama | örnek |
---|---|---|
SUNFUNCS_RET_STRING | Sonucu dizge olarak döndürür. | 16:46 |
SUNFUNCS_RET_DOUBLE | Sonucu gerçek sayı olarak döndürür. | 16.78243132 |
SUNFUNCS_RET_TIMESTAMP | Sonucu tamsayı (zaman damgası) olarak döndürür. | 1095034606 |
enlem
Kuzey yarımküre öntanımlıdır. Güney yarımküre için negatif değer girin.
Ayrıca bakınız: date.default_latitude
boylam
Doğu yarımküre öntanımlıdır. Batı yarımküre için negatif değer girin.
Ayrıca bakınız: date.default_longitude
başucu
Öntanımlı: date.sunset_zenith
gmt_farkı
Saat cinsinden belirtilir.
Bir tarih/zaman işlevine
yapılan her çağrı eğer zaman dilimi ayarı geçerli değilse bir
E_NOTICE
üretir. Ve/veya eğer sistem ayarları veya
TZ ortam değişkeni kullanılıyorsa bir
E_STRICT
veya bir E_WARNING
iletisi üretir. Ayrıca bakınız:
date_default_timezone_set()
Sürüm: | Açıklama |
---|---|
5.1.0 |
Zaman dilimi hatalarında artık |
Başarılı olduğunda, biçim
değiştirgesiyle
belirlenen biçemde gün batımı zamanını, başarız olduğunda false
değerini
döndürür.
Örnek 1 - date_sunset() örneği
<?php
/* İstanbul, Türkiye için günbatımı zamanı hesabı
Enlem: 41.01 Kuzey
Boylam: 28.58 Doğu
Başucu ~= 90
saat farkı: +2 GMT
*/
echo date("D M d Y"). ', günbatımı: ' .date_sunset(time(), SUNFUNCS_RET_STRING, 41.01, 28.58, 90, 2);
?>
Yukarıdaki örnek şuna benzer bir çıktı üretir:
Thu Dec 11 2008, günbatımı: 16:33
yes SUNFUNCS_RET_TIMESTAMP does return GMT(0) time
so something like...
$arr = localtime(date_sunset(time(),SUNFUNCS_RET_TIMESTAMP,51.5,0)); // London
$hh = $arr[2];
$mm = $arr[1];
Will give figure out your localtime and daylight saving (BST)
maybe I am wrong, but I think
SUNFUNCS_RET_TIMESTAMP return GMT(0) time
SUNFUNCS_RET_STRING Return local time
SUNFUNCS_RET_DOUBLE Return local time
I use an IP to location database to determine the visitor's approximate latitude and longitude and then serve them a day or night color scheme based on whether it is before civil dawn or dusk. I've had problems when not specifying the timezone, specifically a 1 hour error, so I use GMT.
<?php
date_default_timezone_set("GMT");
function scheme() {
$sunrise = date_sunrise(time(), SUNFUNCS_RET_DOUBLE, $latitude, $longitude, 96, 0);
$sunset = date_sunset(time(), SUNFUNCS_RET_DOUBLE, $latitude, $longitude, 96, 0);
$now = date("H") + date("i") / 60 + date("s") / 3600;
if ($sunrise < $sunset)
if (($now > $sunrise) && ($now < $sunset)) return "day";
else return "night";
else
if (($now > $sunrise) || ($now < $sunset)) return "day";
else return "night";
}
?>