首页 > 解决方案 > Laravel 格式化时间

问题描述

我在使用我的应用程序时遇到了一些问题。我正在使用 laravel api 将信息发送到我的 React 应用程序。我有控制器,如:

public function index(){

        $user = auth()->user();
        $servers = Server::where('clientid', $user->id)
               ->orderBy('id', 'desc')
               ->take(10)
               ->get();

        if ($user) {
            $reposne['result'] = true;
            $reposne['servers'] = $servers;
        } else {
            return response()->json(['error' => 'Unauthorized'], 401);
        }

        return $reposne;
    }

它成功地返回了我需要的东西,例如:

{
    "result": true,
    "servers": [
        {
            "id": 2512,
            "clientid": 4,
            "boxid": 23,
            "ipid": 60,
            "vazido": 1584355476,
            "created_at": null,
            "updated_at": null,
            "status": "Active"
        }
    ]
}

但是正如你所看到的,有一个列vazido实际上给出了一个时间戳。我怎样才能把这个时间变成实际的人类格式?

标签: phplaravel

解决方案


在您的模型中,您可以使用Eloquent Mutators来形成如下日期。

public function getVazidoAttribute($value)
{
     return $value->format('Y-m-d');
} 

推荐阅读