Laravel 5 Laravel 5.2-如何更新;更新的“U at”;带UTC时间戳的字段?

Laravel 5 Laravel 5.2-如何更新;更新的“U at”;带UTC时间戳的字段?,laravel-5,Laravel 5,我正在使用Laravel 5.2(在PHP版本7上),下面是我正在运行的更新查询: $data=DB::table('posts') ->where("id", $post_id) ->update( array( 'title' => $

我正在使用Laravel 5.2(在PHP版本7上),下面是我正在运行的更新查询:

$data=DB::table('posts')
                        ->where("id", $post_id)
                        ->update(
                            array(
                                'title'         =>      $request['title'],
                                'body'          =>      $request['body'],
                                'slug'          =>      str_slug($request['title']),
                                'updated_at'    =>      DB::raw('CURRENT_TIMESTAMP')
            ));

“updated_at”字段使用当前时间更新。但我想用UTC时间戳更新它。如何实现这一点?

如果使用
model->save()
方法,它应该为您处理创建和更新的日期。通常,您不需要在Laravel中进行原始数据库更新


如果您希望使用不同的时区,请查看app.php中的时区设置。但是,默认值为“UTC”,因此您不必担心

您不需要手动将
updated_设置为
值;Eloquent在调用
update()
@MartinBean时使用当前UTC时间戳为您设置它。我检查了mysql中的记录,发现如果使用update(),则“updated_at”没有更改。抱歉,刚刚意识到您使用的是
DB
外观,而不是一个雄辩的模型。我会为你的帖子创建一个
Post
模型(如果你还没有),这会使你的生活比直接使用数据库模式简单得多。@MartinBean-你能把这个模型作为你的答案吗?