【问题标题】:two different date formats [duplicate]两种不同的日期格式[重复]
【发布时间】:2019-06-09 01:23:33
【问题描述】:

我们有一个小型新闻网站,其中每条新闻都有以下格式的发布时间和日期:

"2018-06-20T06:07:00.000+03:00"

我们以以下格式连接了我们需要发送时间的分析:

"Fri, 23 Feb 2018 15:00:00 +0200"

请告诉我,如何最好地解决这个问题?我们可以将此问题提交给服务器端开发人员,以便请求包含我们需要的格式的日期,或者我们可以在前面进行。

我还是不太明白如何获取文章中日期对应的日期,然后转换成想要的格式,但是我觉得是可以的(也很难)

【问题讨论】:

  • 我不完全理解——问题仅仅是如何使用一种日期格式并将其转换为另一种?如果是这样,我强烈建议您查看momentjs-- 日期解析可能会有点麻烦,而现在大部分时间都会为您处理。也就是说,它是一个有点大的图书馆。
  • 需要将完成日期转换为不同的格式,而不是获取新的...
  • 如果您使用像@AlexanderNied 推荐的那样的库,这绝对是可能的,而且并不困难。它可以获取您的日期并按照您的喜好进行格式化。
  • 我在这个库的文档中没有看到转换现有日期的能力。你能告诉我,也许我错过了什么吗?
  • 如果您的日期以字符串形式存在,就像您在问题中显示的那样,您首先必须 parse 它,然后您可以使用生成的 moment 对象 format 它。跨度>

标签: javascript reactjs date


【解决方案1】:

如果他们使用的是 PHP,您可以尝试以下方法:

$date = date_create_from_format("Y-m-d\TH:i:s.uP", "2018-06-20T06:07:00.000+03:00");
echo date_format($date,'D, d M Y H:i:s O');

这应该给你一个日期:2018 年 6 月 20 日星期三 06:07:00 +0300

只要输入日期始终采用相同的格式,这应该可以工作。

【讨论】:

    【解决方案2】:

    正如人们在 cmets 中向我建议的那样,使用 javascript 的最佳解决方案是使用库 moment.js

    以下代码完成了我需要的工作。

    moment("2018-06-20T06:07:00.000+03:00").format('ddd, D MMM YYYY HH:mm:ss ZZ');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-09
      • 1970-01-01
      相关资源
      最近更新 更多