【问题标题】:php not converting datesphp不转换日期
【发布时间】:2017-07-28 09:24:28
【问题描述】:

这可能很简单,但我仍然需要帮助。

我有这部分 php 代码:

$END = NULL;

if (isset ($_POST['end'])){
    $END = date_format($_POST['end'], "Y-m-d H:i");
}

其中$_POST['end'] 是我以dd-mm-YYYY HH:mm 格式获取的日期和时间。问题是,您可以猜到,它不会将我的输入转换为Y-m-d H:i 格式,它只是没有做任何事情。但是我遵循了我在另一个确实有效的代码中看到的内容。我在这里做错了什么?

忽略我不检查输入是否写得好这一事实,我认为它会是。

【问题讨论】:

  • 您是否查看过 date_format 所做的和期望的输入? php.net/manual/en/datetime.format.php
  • 是的,我做到了,但再次查看后,我发现了我的错误。没关系。

标签: php date


【解决方案1】:

这是因为 date_format 接受对象而不是字符串。您应该使用函数 date 并将时间戳传递给它的第二个参数。

【讨论】:

    【解决方案2】:

    使用 date_create() 函数将字符串转换为日期,然后将其传递给 date_format() 函数。

    if (isset ($_POST['end'])){
        $date = create_date( $_POST['end'] );
        $END = date_format($date, "Y-m-d H:i");
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-06
      • 2011-05-23
      • 2014-03-04
      • 2014-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多