【问题标题】:Android datetime to MySQL datetime via PHP通过 PHP 将 Android 日期时间转换为 MySQL 日期时间
【发布时间】:2014-04-12 20:31:47
【问题描述】:

我用php行:

date("Y-m-d H:i:s", $timestamp);

为 MySQL DB DATETIME 字段转换日期和时间

其中 $timestamp var 有从 Android 发送过来的时间戳,获取方式为:

new java.util.Date().getTime();

现在,Android 返回,比如说,不是最近的“1394398765798”,根据文档,它应该是当前时间戳

我的问题是我无法将值输入数据库,所以我决定使用this website 查看时间戳的实际值,它给了我不期望的值:46156-09-26 14 :29:58

所以我发现了问题.. 但我的问题是 PHP(我是业余爱好者)的时间戳是否不是从 1970 年开始的.. 或者可能是什么问题?也许我使用错误的方法来解决我的问题..

【问题讨论】:

    标签: php android mysql datetime type-conversion


    【解决方案1】:

    PHP 的 time() 方法返回秒数。

    Java 的 Date.getTime() 返回毫秒数。

    要从 PHP 转换为 Java,请乘以 1000。同样,要获得相反的结果,请除以它。

    如果您也打算使用日期作为标识符,我强烈建议在两个平台之间对其进行规范化,以便它们同步并且可以正确链接(即,无论何时在 Java 中获取时间,您都应该始终除以 1000 并重新乘以 1000,然后将其保存到应用程序的本地数据库(这将为您提供 000),这样这些值将始终与服务器的数据库同步)。

    【讨论】:

      【解决方案2】:

      好吧,我发现PHP中的时间戳其实比

      的时间戳要短
      new java.util.Date().getTime();
      

      当我去掉最后 3 个数字时,我得到 datetime,它比 Android 时间戳短 1 小时零几分钟

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-07-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-20
        相关资源
        最近更新 更多