我有一个页面,其中有两个文本框,用户将在其中输入unix时间戳和日期时间,我必须比较时间戳和时间,但在php中,时区根据时区给出不同的时间戳,因此代码不适用于所有时区不同的地方。
请帮我处理一下我用过的。。
php、中的
strtotime()、mktime()、getTimestamp()
还为此使用了我的sql。。
SELECT UNIX_TIMESTAMP(),但它们都给出了不同的时间戳。
$sql = "SELECT UNIX_TIMESTAMP('date time from text box') as timeStampfromdb";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
$timeStampFromDateTime = $row["timeStampfromdb"];
}
if($timeStampFromDateTime == timestamp textbox value)
{
matched
}
else
{
not matched
}
您可以在php.ini文件中设置php时区,对于GMT,您需要"GMT"。
你也可以尝试你的代码:
echo date('Y-m-d H:i:s T', time()) . "<br>'n";
date_default_timezone_set('GMT');
echo date('Y-m-d H:i:s T', time()) . "<br>'n";
time()应该返回当前的unix时间戳。
如果你在跨时区处理日期和时间,你应该在GMT处理所有事情,以避免时区问题。如果您需要在某个时间点显示日期和时间,则可以在此处进行任何必要的时区转换。