2013-02-08 84 views
1

我想在用戶登錄後比較用戶時區中的日期和日期。 我用php獲取用戶的時區。 現在如何在用戶的時區當前時間的javascript中獲取當前日期/時間。使用時區獲取日期javascript

@everyone回答: 我不需要當前本地系統時區或偏移量在幾秒鐘內。 我需要用戶當前時間與動態時間我在PHP中。 例如: 我有'亞洲/加爾各答'或'美國/丹佛'或任何會動態的php。 現在我可以將其保存爲隱藏值,以便我可以使用Javascript 獲得它,並且比我需要此時區的當前日期與JavaScript相同的日期對象。

回答

0

試試這個:

// date() function 
var currDate = new Date() 
var n = currDate.getTimezoneOffset(); 
+0

這會給我,我不希望本地系統的日期。 和n會給我抵消。 – 2013-02-08 12:00:16

0
<script> 
var date=<?php echo date("Y/m/d")?> 
</script> 

得到補償,這可能幫助你

+0

這沒有考慮到用戶的時區 – Bohemian 2013-02-08 11:53:15

0

嘗試這樣

<script> 
    var date = '<?php echo date("Y/m/d");?>'; 
    alert(date); 
</script> 

深,你也可以嘗試這樣

var today = new Date(); 
var localoffset = -(today.getTimezoneOffset()/60); 
var destoffset = -4; 

var offset = destoffset-localoffset; 
var d = new Date(new Date().getTime() + offset * 3600 * 1000); 
alert(d); 

那裏你可以得到

0

您可以發送UTC字符串

strtotime("2013-02-08 00:00:00"); 

之後,你會seconsd,你可以轉換簡單的JS日期:

var utcString = 1360263600 /*AJAX result must be here*/; 
new Date(utcString*1000); 
0

您可以使用JavaScript日期對象來獲取用戶的本地系統..

例如,你可以使用下列內容:

var d = new Date(); 
var time = d.getTime(); 
alert(time); 

這將提醒麻木呃午夜以來的毫秒。

您可以發送這個時間到您的服務器並比較兩者。

更多的功能和細節,您可以訪問JavaScript Date Object

0

我來自臺灣,並返回「+8」對我來說。

Working example

JS

function timezone() { 
    var offset = new Date().getTimezoneOffset(); 
    var minutes = Math.abs(offset); 
    var hours = Math.floor(minutes/60); 
    var prefix = offset < 0 ? "+" : "-"; 
    return prefix+hours; 
} 


$('#result1').html(timezone()); 

HTML

<div id="result"></div> 

結果

+8