编程语言
首页 > 编程语言> > PHP-返回int时间戳而不是datetime

PHP-返回int时间戳而不是datetime

作者:互联网

我想知道是否有一个简单的解决方案来覆盖Laravel / Lumen默认值,以返回unix时间戳,而不是返回模型时的实际日期.

    "mission": {
        "id": 1,
        "start": "2016-01-17 13:57:12",
        "end": "2016-02-17 00:00:00",
        "salary": "1000",
        "description": "Lorem ipsum dipsum chipsum, wipsum dodaskipsum wawipsum. Badatiss dum"
     }

现在,无论何时何地,无论何时何地,我都必须将日期时间戳转换为Unix时间戳.

例如:

        $result = Mission::all()
        ->map(function ($mission) {
            $mission->start = $this->toTimestamp($mission->start);
            $mission->end = $this->toTimestamp($mission->end);
            return $mission;
        })

解决方法:

您可以使用get..attribute在模型中设置日期时间mutate.

public function getStartAttribute($date)
{
    return $date->getTimestamp();
}

如果$date是Carbon对象,则应使用$date-> timestamp

或者,您可以覆盖模型上的所有时间戳记:

protected function getDateFormat()
{
    return 'U'; //U = Seconds since the Unix Epoch (January 1 1970 00:00:00 GMT)
}

标签:lumen,laravel,php
来源: https://codeday.me/bug/20191027/1943680.html