代码之家  ›  专栏  ›  技术社区  ›  Jonathan Garrett

date()函数timestrap返回错误的日期

  •  1
  • Jonathan Garrett  · 技术社区  · 9 年前

    当我将时间戳参数赋给phpdate()时,返回的日期不正确。格式正确,但结果不符合预期。

    src来自Hubspot json。

    public 'publish_date' => int 1438079400000
    
    $feed = (object) $this->json;
        $string = '';
    
        if( $feed->total_count > 0):
            foreach( $feed->objects as $item ):
                $item = (object) $item;
                date_default_timezone_set('Europe/London');
                ob_start();
    
                ?>
                <?php echo date( 'l jS F Y', $item->publish_date ); ?>
                <?php
    
                $string .= ob_get_clean();
    
            endforeach;
        endif;
    
        return $string;
    

    中的结果 4月14日星期日47546

    Epoch Converter检查显示时间戳为 2015年7月30日星期四09:30:00 GMT

    使用不带时间戳的date()返回今天的正确日期。

    1 回复  |  直到 9 年前
        1
  •  2
  •   Farkie    9 年前

    你需要将日期除以1000。

    1438079400000->14380794000

    php > echo date('Y-m-d H:i:s', 1438079400000);
    47540-12-03 12:00:00
    php > echo date('Y-m-d H:i:s', 1438079400);
    2015-07-28 11:30:00