XAMP (Windows) MariaDB 中 NOW() 的意外行为

问题描述 投票:0回答:1

我尝试在运行 PHP 8.x 和 MariaDB 10.x 的 Windows XAMP 上用 SQL 进行时间计算。我需要获取两个日期时间之间的秒数。

SELECT 
    TIME_TO_SEC(TIMEDIFF(NOW(),'2023-12-05 21:19:22')) AS td,
    TIMESTAMPDIFF(SECOND,NOW(),'2023-12-05 21:19:22') AS tsd

“2023-12-05 21:19:22”部分是固定时间部分,从现在开始。每次运行此查询时,它都会给出固定日期时间和 NOW() 的秒数差异; 两种计算都给出正确的秒数。 但在随机的一点上,差异会减少数千秒。看起来检索到的时间有时是夏令时有时不是?

这是软件组合中的已知错误吗?

如果是这样,我预计这将在生产服务器(linux)上运行良好

我可以使用其他方法吗?

php mariadb xampp
1个回答
0
投票

我认为这种行为是由于时间服务器造成的。有时会给出夏令时,有时则没有。在 PHP 和 mysql 中我定义了 default_time_zone。希望这能解决问题。

© www.soinside.com 2019 - 2024. All rights reserved.