Nasıl PHP javascript yöntemi Date.setTime () için bir değer sağlamak için?

3 Cevap php

Is it time()? Is it time().substr(microtime(), 2, 2)? Is it time().substr(microtime(), 2, 3)?

Tür aşağıdaki pasajı ile kaybetti.

function updateClock ( ) {
    var timeStamp = <?php echo time().substr(microtime(), 2, 2);?>;
    var currentTime = new Date ( );
    currentTime.setTime( timeStamp );

    ...
    ...
}

Amacım sunucu zaman kullanmak ve istemci tarayıcı penceresinde oradan geçiyor başlamaktır. Ya yukarıdaki kod geçerli istemci bilgisayar saati döndürür veya bazen 1973 yılında. Ben SetTime için doğru zaman damgası biçimi () almıyorum sanırım?

Teşekkürler!

  • 1000

Bunu denedim ama benim sunucuya (javascript kodu render) js.php yükledikten sonra web sayfası hala benim yerel saati gösterir. Benim sunucu benden sürede yaklaşık 12 saat farklıdır. Benim tahminim php zaman çalışan dikkate istemci tarafı zaman alır () demek olduğunu? Ben tarayıcılar doğru apache isteği zaman gönderebilirim demek?

I () * 1000 benim sunucuda web sayfası vadede gelen değer döndü ve yerel bir sayfanın içine yapıştırılan zaman kopyalanan:

<script type="text/javascript">

var d = new Date();
d.setTime(1233760568000);
document.write(d);

</script>

Ve bu gerçekten benim yerel zamanı. Böylece tahmin.

Zaman zaman dilimini belirtmek () için yine de var mı?

3 Cevap

Date.setTime bekliyor 1970/01/01 beri milliseconds sayısı. PHP'nin time function 1970/01/01 beri seconds sayısını verir. Bu nedenle, sadece kullanabilirsiniz

var TimeStamp = <?php echo time()*1000;?>

Nedeniyle gecikme sorunları (tarayıcılar JavaScript başlamadan önce tüm sayfayı yüklemek gerekiyor) için, zaman genellikle rağmen bir ya da bir kaç saniye kayması olacaktır.

PHP saniye döner iken. JavaScript milisaniyede beklediği 1000 ile çarpın.

Date.setTime () Unix Epoch beri milisaniye istiyor, ve time () o zamandan beri saniye döndürür. Mutlak hassasiyet gerekli değilse, sadece 1000 ile zaman () elde değerini çarpın, (ve metodoloji verilen, ben öyle düşünmüyorum).

Edit: iki kere dayak - D'oh