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
(PHP 5, PHP 7, PHP 8)
date_sunrise — Belirtilen gün ve konum için şafak 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.sunrise_zenith")
, float $gmt_farkı
= 0
) : mixed
date_sunrise() işlevi, verilen gün
(zamandamgası
) ve konum için şafak zamanını
döndürür.
zamandamgası
Şafak zamanı öğrenilecek 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.sunrise_zenith
gmt_farkı
Saat cinsinden belirtilir.
Başarılı olduğunda, biçim
değiştirgesiyle
belirlenen biçimde şafak zamanını, başarız olduğunda false
değerini
döndürür.
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 |
Örnek 1 - date_sunrise() örneği
<?php
/* İstanbul, Türkiye için şafak hesabı
Enlem: 41.01 Kuzey
Boylam: 28.58 Doğu
Başucu ~= 90
saat farkı: +2 GMT
*/
echo date("D M d Y"). ', şafak: ' .date_sunrise(time(), SUNFUNCS_RET_STRING, 41.01, 28.58, 90, 2);
?>
Yukarıdaki örnek şuna benzer bir çıktı üretir:
Fri Dec 12 2008, şafak: 07:25
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
If you are working in multiple timezones getting the offset from a date is a little tricky because you need it in hours.
<?php
$time = new DateTime('now', new DateTimeZone('America/Los_Angeles'));
date_sunrise(
$time->getTimestamp(),
SUNFUNCS_RET_TIMESTAMP,
38.4,
-9,
90,
$time->getOffset() / 3600
);
After some searching, I finally found a website that can calculate the sun's zenith. Just look up your city's lat/long (remember, west/south are negative even if it doesn't show where you look up the lat/long) and the time of sunrise/sunset and use this site:
http://solardat.uoregon.edu/cgi-bin/SolarPositionCalculator.cgi
You have to enter in the sunrise/sunset times separately, but it works.
San Diego is:
Lat: 32.73
Long: -117.17
Sunrise Z.: 90.7379
Sunset Z.: 90.8880