登录

没见过这种时间格式,如何用PHP格式化它

从某API中获取到的时间格式是这样的2014-10-30T15:59:59.999Z
PHP如何格式化它为正常的date例如Y-m-d H:i:s

# PHP
高洛峰高洛峰2200 天前534 次浏览

全部回复(3) 我要回复

  • 巴扎黑

    巴扎黑2017-04-10 16:06:22

    可以自己定义,现在都采用面向对象的方式来操作时间了,就是所谓的DateTime

    有很多已经定义好的格式

     DateTime implements DateTimeInterface {
    /* 常量 */
    const string ATOM = "Y-m-d\TH:i:sP" ;
    const string COOKIE = "l, d-M-Y H:i:s T" ;
    const string ISO8601 = "Y-m-d\TH:i:sO" ;
    const string RFC822 = "D, d M y H:i:s O" ;
    const string RFC850 = "l, d-M-y H:i:s T" ;
    const string RFC1036 = "D, d M y H:i:s O" ;
    const string RFC1123 = "D, d M Y H:i:s O" ;
    const string RFC2822 = "D, d M Y H:i:s O" ;
    const string RFC3339 = "Y-m-d\TH:i:sP" ;
    const string RSS = "D, d M Y H:i:s O" ;
    const string W3C = "Y-m-d\TH:i:sP" ;
    ……
    //http://php.net/manual/zh/class.datetime.php
    }

    上面格式化,代码如下

    $date = new DateTime('2014-10-30T15:59:59.999Z');
    echo $date->format('Y-m-d H:i:s');

    回复
    0
  • 巴扎黑

    巴扎黑2017-04-10 16:06:22

    echo(date_format(date_create('2014-10-30T15:59:59.999Z'),'Y/m/d H:i:s'));
    这么标准的ISO时间格式

    回复
    0
  • 阿神

    阿神2017-04-10 16:06:22

    怎么没人回复strtotime这个变态又常用的函数?

    <?php
    echo date("Y-m-d H:i:s", strtotime("2014-10-30T15:59:59.999Z"));
    //输出2014-10-30 23:59:59
    

    回复
    0
  • 取消回复发送