【问题标题】:convert date to T Z format [duplicate]将日期转换为 T Z 格式 [重复]
【发布时间】:2013-05-07 03:18:21
【问题描述】:

我的日期格式是这样的

2013-05-07 18:56:57 (yyyy-MM-dd hh:mm:ss)

我希望输出如下。

2013-05-07T06:17:55.827Z

有没有比使用大函数更简单的方法?

【问题讨论】:

    标签: php date


    【解决方案1】:

    试试这个:

     date("Y-m-d\TH:i:s.000\Z", strtotime("2013-05-07 18:56:57"));
    

    【讨论】:

    • 我可以让 .000 动态吗?
    • Z 后缀的整个想法是日期表示为 UTC; date() 不会这样做,因为它会考虑当地时区。
    • 默认php数据不包含毫秒,但如果你使用当前日期,你可以使用microtime()函数来获取它
    【解决方案2】:

    这应该在 Z(ulu) 时区给出正确的 ISO8601 日期/时间:

    str_replace('+00:00', 'Z', gmdate('c'))
    

    进行日期转换:

    str_replace('+00:00', 'Z', gmdate('c', strtotime('2013-05-07 18:56:57')))
    

    拥有额外的.000(恕我直言没用):

    str_replace('+00:00', '.000Z', gmdate('c', strtotime('2013-05-07 18:56:57')))
    

    【讨论】:

    • 我应该在哪里传递我的约会??
    • @sandy 这是gmdate()的第二个参数。
    • 我试过它没有用..我试过这样 str_replace('+00:00', 'Z', gmdate('c','2013-05-07 18:56: 57'));
    • @sandy 你还必须使用strtotime()。更新了答案。
    • @sandy 你实际上并不需要 .000 是一个有效的日期/时间。
    猜你喜欢
    • 1970-01-01
    • 2013-07-15
    • 1970-01-01
    • 2012-02-28
    • 2013-08-17
    • 2018-09-21
    • 1970-01-01
    • 1970-01-01
    • 2020-11-24
    相关资源
    最近更新 更多