【问题标题】:Convert date into a unix timestamp将日期转换为 unix 时间戳
【发布时间】:2014-12-10 13:56:40
【问题描述】:

我的转换有问题。我不明白我的问题出在哪里,因为通常一切都会正常工作,所以我的转换不起作用。

$sEndDateFilter is 27/03/2015 23:59:59

当我尝试转换时:

$iEndDateFilter = strtotime($sEndDateFilter);

我的 $iEndDateFilter 是视频

请帮帮我。

【问题讨论】:

  • 试试这样的:strtotime(str_replace('/', '-', '27/05/1990'));
  • 这似乎是您的解决方案:stackoverflow.com/questions/2891937/…
  • RTFM: php.net/strtotime 2nd last note> “m/d/y 或 d-m-y 格式的日期已消除歧义...”。您正在使用/,这意味着 m/d/y,但正在传递 d/m/y

标签: php datetime php-5.3 php-5.4


【解决方案1】:

这应该适合你:

echo strtotime(str_replace('/', '-',"27/03/2015 23:59:59"));

您必须将/ 替换为-

【讨论】:

    【解决方案2】:

    来自manual: m/d/y 或 d-m-y 格式的日期通过查看各个组件之间的分隔符来消除歧义:如果分隔符是斜杠 (/),则假定为美式 m/d/y;而如果分隔符是破折号 (-) 或点 (.),则假定为欧洲 d-m-y 格式。

    因此,正如 Rizier 所建议的,一种可能的解决方案是将斜杠替换为如下所示的破折号:

    echo strtotime(str_replace('/', '-',"27/03/2015 23:59:59"));

    【讨论】:

    • 他做了,但另一个是从官方文档中复制的,因为这个引用了
    • @TecBrat 现在没关系,因为你说:“嘿,如果你在这里阅读手册......你会看到这个......”现在这是一个很好的参考并回答了为什么 OP 的代码不起作用!也许您可以为 OP 如何解决此问题提供答案。
    • 无论是从手册还是从其他问题中复制的,这里的信息仍然有用。
    猜你喜欢
    • 2020-10-19
    • 2020-12-23
    • 2016-04-24
    • 2012-07-04
    • 1970-01-01
    • 1970-01-01
    • 2015-02-09
    • 1970-01-01
    相关资源
    最近更新 更多