2

Javascript:

function setinvitexpire(){

var ee = new Date ();
ee.setTime(ee.getTime() + (365 * 24 * 3600 * 1000));

var bb = Math.round(new Date().getTime() / 1000) + (24 * 3600); // remove milliseconds

document.cookie="visit=" + bb + ";expires=" + ee.toGMTString();

}
setinvitexpire();

PHP:

<?php 
if(isset($_COOKIE['visit'])){ 
echo date('m/d/Y g:i A', $_COOKIE['visit']); 
echo "<br>";
} 
?>

私は得る:

06/26/2012 11:57 AM

それ以外の:

06/26/2012 18:07 AM

私の国の現在の時刻は06/25/2012 18:07 AMです

これを解決し、現在の時刻 + 24 時間を Cookie に保存するにはどうすればよいですか?

編集:私はこのように解決しました:

document.cookie="visit=" + <?php echo time() + (24 * 3600); ?> + ";expires=" + ExpireC.toGMTString();
4

1 に答える 1

0

GMT (~ UTC) 時刻を取得しています。UTC時刻とタイムゾーンの両方を保存する必要があります。参照getTimezoneOffset(): https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date/getTimezoneOffset

余談ですが:

toGMTStringは非推奨です。使用する必要がありますtoUTCString

于 2012-06-25T16:14:13.423 に答える