php - 为什么 php 时间戳与 future 日期的 mysql UNIX_TIMESTAMP 不同?

标签 php mysql timestamp unix-timestamp

这对我来说真的很奇怪。

我试过: <?php echo strtotime(date("Y-m-d H:i:s")); ?>

它返回:1351498120

此外,当我运行此查询时:SELECT UNIX_TIMESTAMP(now()) ,

它返回相同的结果:1351498120

但是当我尝试时:<?php echo strtotime(date("2012-10-29 18:00:00")); ?>

它返回:1351533600

然而,如果我运行此查询:SELECT UNIX_TIMESTAMP('2012-10-29 18:00:00') ,

它返回:1351513800

现在我的问题是:为什么 php 和 mysql 的时间戳当前日期相同,但 future 日期不同?有没有办法比较它们的 future 日期?

(注意:我在 php 中将 UTC 作为默认时区)

最佳答案

两者之间有 5.5 小时的差异,这表明它是时区问题,在两端。 MySql 服务器的时区可以不同地配置。

SET time_zone = timezonename;

可用于为当前 session 设置时区。 检查 MySQL Date and Time Functions

关于php - 为什么 php 时间戳与 future 日期的 mysql UNIX_TIMESTAMP 不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13117903/

相关文章:

php - Symfony Generator Forms、Doctrine 和 M :N Relationships

javascript - 如何允许仅选择一个动态生成的单选框?

php - 是否需要更改 select 语句的变量名称?

php - Laravel 的 mysql 嵌套选择查询的 Eloquent 关系

MySQL - 结合两个字段来创建一个 unix 时间戳?

php - 我什么时候应该使用 Perl CGI 而不是 PHP(反之亦然)?

php - PHP SoapClient 是否支持 HTTPS 连接

mysql - phpMyAdmin 表与 MySQL View

java - 在时间戳中的任何位置查找日期

索引字段上的 Postgresql 9.2 时间戳排序不会在一天内按小时部分排序