PHP strtotime():转换后日期显示“1970-01-01”

用户3081672

我正在从 excel 表中读取数据并插入到 MySQL 表中。在这个过程中,我使用 PHP 方法将时间戳(字符串)转换为日期时间strtotime()

$timestamp = date('Y-m-d H:i:sa',strtotime(trim($value->Time)));

这在某些情况下是失败的。

例子:

 echo date('Y-m-d H:i:s',strtotime('04-13-2018 0:00:53'));

 echo date('Y-m-d H:i:s',strtotime('04-12-2018 0:00:53'));

输出:

1970-01-01 00:00:00

2018-12-04 00:00:53

任何人都可以帮助我如何解决这个问题?

失败的示例字符串:

04-12-2018 0:00:53
04-12-2018 0:01:53
04-12-2018 0:02:53
04-12-2018 0:03:53
04-12-2018 0:04:53
04-12-2018 0:05:53
04-12-2018 0:06:53
04-12-2018 0:07:53
04-12-2018 0:08:54
04-12-2018 0:09:54
04-12-2018 0:10:53
04-12-2018 0:11:53
04-12-2018 0:12:53
04-12-2018 0:13:53
04-12-2018 0:14:53
04-12-2018 0:15:53
04-12-2018 0:16:53
04-12-2018 0:17:53
04-12-2018 0:18:53
04-12-2018 0:19:54
04-12-2018 0:20:54
04-12-2018 0:21:54
04-12-2018 0:22:53
04-12-2018 0:23:54
04-12-2018 0:24:53
04-12-2018 0:25:54
系统调用

您的格式不是解析器理解格式

在你的情况下13不是“月”。所以解析器目前还不明白。

你应该使用DateTime::createFromFormat()

$date = DateTime::createFromFormat('m-d-Y H:i:s','04-13-2018 0:00:53');
echo $date->format('Y-m-d H:i:s');

输出:

2018-04-13 00:00:53

请注意,格式也可以是:'m-d-Y G:i:s'with Gfor "24-hour format of a hour withoutleading zeros"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

避免在strtotime为false时显示1970-01-01

来自分类Dev

如果日期时间== 01:01:01

来自分类Dev

如何将日期输入从表单传递到php。输出为1970-01-01

来自分类Dev

JavaScript日期01/01/0001

来自分类Dev

date()返回1970-01-01

来自分类Dev

php 插入到我的数据库后,日期始终为 1970-01-01 和 2018-08-31

来自分类Dev

CET 转换 +01:00

来自分类Dev

为什么MongoDB shell新的ISODate(0001-01-01)返回日期1901-01-01

来自分类Dev

如何使用 Java 生成 01/01/2016 到 01/01/2017 之间的任何随机日期?

来自分类Dev

PHP从日期时间对象比较01到1

来自分类Dev

strtotime函数返回有效输入01/01/70

来自分类Dev

strtotime函数返回有效输入01/01/70

来自分类Dev

Asterisk ODBC:为什么是“上次连接尝试:1970-01-01 01:00:00”?

来自分类Dev

如何在PHP中将日期时间从UTC转换为UTC + 01(也在Asia / Calcutta中)

来自分类Dev

MySQL“ null”日期是否有值(0001-01-01)

来自分类Dev

将日期“1900-01-01”从 angular 传递到 wcf

来自分类Dev

确保时钟显示 12:01 而不是 0:01

来自分类Dev

nvd3格式化日期始终返回1970-01-01

来自分类Dev

为什么我的SQLite查询返回的系统日期为1970-01-01?

来自分类Dev

为什么我的SQLite查询返回的系统日期为1970-01-01?

来自分类Dev

SQL Server查询返回两个日期时间之间的数据,格式为01/07/2020 01:01:01 a。米

来自分类Dev

如何防止pandas.to_datetime()函数将0001-01-01转换为2001-01-01

来自分类Dev

如何使用PHP获取GMT + 01:00

来自分类Dev

背包01

来自分类Dev

从字符串转换为 01-01-0001 的转换日期时间

来自分类Dev

为什么将插入列中的日期转换为2000-01-01?

来自分类Dev

将SQL Server中的毫秒转换为01/01/2040之后的日期

来自分类Dev

无法将日期“ 0001-01-01”从Java正确转换为C#

来自分类Dev

如何在 Java 8 中将字符串(例如“01/01/2019”)转换为日期

Related 相关文章

  1. 1

    避免在strtotime为false时显示1970-01-01

  2. 2

    如果日期时间== 01:01:01

  3. 3

    如何将日期输入从表单传递到php。输出为1970-01-01

  4. 4

    JavaScript日期01/01/0001

  5. 5

    date()返回1970-01-01

  6. 6

    php 插入到我的数据库后,日期始终为 1970-01-01 和 2018-08-31

  7. 7

    CET 转换 +01:00

  8. 8

    为什么MongoDB shell新的ISODate(0001-01-01)返回日期1901-01-01

  9. 9

    如何使用 Java 生成 01/01/2016 到 01/01/2017 之间的任何随机日期?

  10. 10

    PHP从日期时间对象比较01到1

  11. 11

    strtotime函数返回有效输入01/01/70

  12. 12

    strtotime函数返回有效输入01/01/70

  13. 13

    Asterisk ODBC:为什么是“上次连接尝试:1970-01-01 01:00:00”?

  14. 14

    如何在PHP中将日期时间从UTC转换为UTC + 01(也在Asia / Calcutta中)

  15. 15

    MySQL“ null”日期是否有值(0001-01-01)

  16. 16

    将日期“1900-01-01”从 angular 传递到 wcf

  17. 17

    确保时钟显示 12:01 而不是 0:01

  18. 18

    nvd3格式化日期始终返回1970-01-01

  19. 19

    为什么我的SQLite查询返回的系统日期为1970-01-01?

  20. 20

    为什么我的SQLite查询返回的系统日期为1970-01-01?

  21. 21

    SQL Server查询返回两个日期时间之间的数据,格式为01/07/2020 01:01:01 a。米

  22. 22

    如何防止pandas.to_datetime()函数将0001-01-01转换为2001-01-01

  23. 23

    如何使用PHP获取GMT + 01:00

  24. 24

    背包01

  25. 25

    从字符串转换为 01-01-0001 的转换日期时间

  26. 26

    为什么将插入列中的日期转换为2000-01-01?

  27. 27

    将SQL Server中的毫秒转换为01/01/2040之后的日期

  28. 28

    无法将日期“ 0001-01-01”从Java正确转换为C#

  29. 29

    如何在 Java 8 中将字符串(例如“01/01/2019”)转换为日期

热门标签

归档