Evet arkadaşlar İnternet Saatini PHP ile tespit edebiliyoruz. Dikkat edin Server Zamanından bahsetmiyorum , date() ve time() fonksiyonları ile karıştırmayın. Hani bilgisayarınızda saati güncellemek için otomatik internet saatini kullanırsınız ya ondan bahsediyorum. Bizde bunu tespit edeceğiz...
Ne zaman lazım olur diye düşünüyorsanız, basitçe söyleyeyim geri kalanını siz hayal edin.
Örnek olarak: Gelişmiş bir proje üzerinde çalışıyorsunuz ve ince hesap kitap işleri oluyor , olacak bunların şaşmaması için her ihtimali göz önünde bulundurmanız gerekiyor (sunucunuzun saatinin yanlış olması veya geri kalması gibi) ve sorunla karşılaşmamak için İnternet Saatini referans alarak gerekli kontrolleri gerçekleştirebilirsiniz.
Neyse fazla uzatmadan kodları vereyim kıymetimi bilin ;)
<?php error_reporting(E_ALL ^ E_NOTICE); ini_set("display_errors", 1); //date_default_timezone_set("Europe/Istanbul"); date_default_timezone_set("Europe/Moscow");//Normalde İstanbul Kullanmamız Gerekiyor Ama Yaz Saati Uygulaması Kalktığından TimeZone İçin GMT+03:00 Olmasını Sağladık. function ZamanSunucuQuery ($SunucuZamani, $Soket) { $BaglantiAc = fsockopen($SunucuZamani,$Soket,$HataKodu,$HataYazi,10); # Parametreler: SunucuZamani, Soket, HataKodu, HataYazi, ZamanAşımı if($BaglantiAc) { fputs($BaglantiAc, "\n"); $ZamanDegeri = fread($BaglantiAc, 49); fclose($BaglantiAc); # Bağlantıyı Kapat } else { $ZamanDegeri = " "; } $dizi = array(); $dizi[] = $ZamanDegeri; $dizi[] = $HataKodu; # HataKodu $dizi[] = $HataYazi; # HataYazi return($dizi); } # function ZamanSunucuQuery $SunucuZamani = "time-nw.nist.gov"; //http://tf.nist.gov/tf-cgi/servers.cgi $SorguSonucu = ZamanSunucuQuery($SunucuZamani, 37); if(!$SorguSonucu[1]) { $ZamanDegeri = bin2hex($SorguSonucu[0]); $ZamanDegeri = abs(HexDec('7fffffff') - HexDec($ZamanDegeri) - HexDec('7fffffff')); $ZamanDamgasi = $ZamanDegeri - 2208988800; # Unix zamanını çeviriyoruz $UTC = date("Y-m-d (D) H:i:s",$ZamanDamgasi - date("Z",$ZamanDamgasi)); $YilGunu = (date("z",$ZamanDamgasi)+1); echo "<b>",$SunucuZamani,"</b> Sunucusundaki Geçerli Zaman :<br>\n [<font color=\"red\">",$ZamanDegeri,"</font>]"; echo " (1900-01-01 00:00.00 den beri geçen saniyeler).<br>\n<br>\n"; echo "Geçerli Tarih ve Evrensel Zaman : ",$UTC," UTC. <br>\n<br>\n"; echo "Yılın ",$YilGunu,". Günü.<br>\n<br>\n"; echo "Unix Zaman Damgası $ZamanDamgasi.<br>\n<br>\n"; $ZamanSonucu = date("H:i:s d-m-Y ", $ZamanDamgasi); echo "<b><font color='green'>",$ZamanSonucu,"</font>"; } else { echo "Maalesef, zaman kontrolü için $SunucuZamani sunucusuna ulaşılamadı. "; echo "$SorguSonucu[1] $SorguSonucu[2].<br>\n"; } ?>
Güle Güle Kullanın. Sağlıcakla Kalın...
YORUM YAPMAK İSTER MİSİN?