【问题标题】:Date convert showing wrongly [duplicate]日期转换显示错误[重复]
【发布时间】:2018-07-09 05:02:12
【问题描述】:

我喜欢在 PHP 中将日期格式 dd/mm/yyyy 转换为另一种格式。

我的代码:

$date = '29/01/2018';
echo date('l jS F Y', strtotime($date)); 

当我运行上面的代码时,它显示了一些错误的日期:

Thursday 1st January 1970

我做错了吗?

【问题讨论】:

  • strtotime 将其取消设置为 mm/dd/yyyy
  • 发生这种情况是因为您的 $date 的 strtotime 格式未知
  • 与最近的另一个问题相同的问题,相同的解决方案:stackoverflow.com/a/48517562/1427878

标签: php date date-format


【解决方案1】:

您还可以使用 DateTime 对象来帮助您转换日期。您可以“从指定格式创建日期时间对象”并进行转换。

$date = "29/01/2018";
$dt = DateTime::createFromFormat("d/m/Y", $date);

echo $dt->format("l jS F Y");

【讨论】:

    【解决方案2】:

    表示美国 M/D/Y 格式

    <?php
    
    $date = '01/29/2018';
    echo date('l jS F Y', strtotime($date)); 
    

    输出

    Monday 29th January 2018
    

    【讨论】:

      猜你喜欢
      • 2015-02-21
      • 1970-01-01
      • 2017-03-13
      • 2019-06-30
      • 2011-02-10
      • 2013-07-31
      • 2021-12-25
      • 2018-01-02
      相关资源
      最近更新 更多