zoukankan      html  css  js  c++  java
  • laravel 输出时间少了8小时

    讲解

    这次做项目的时候使用回了laravel8 版本 但是好巧不巧,

    发现不是输出的格式有问题就是输出的时间不准确

    问题解决方案

    问题一

    • 输出的时间格式没有序列化;如图所示

    image-20210508083638940

    • 解决方案

    如果采用代码中格式输出的方式很繁琐以后每次写代码的时候我们都需要格式化

    一下时间然后再输出,这个时候我们可以采用laravel提供的修改器统一的格式化输出时间

    • 在对应的模型中使用修改器
    //不知道修改器如何使用的可以查阅官方文档   
    use CarbonCarbon;    
        public function getCreatedAtAttribute($value)
        {
            # 使用Carbon函数格式化输出时间
            return Carbon::parse($value)->toDateTimeString();
        }
    
        public function getUpdatedAtAttribute($value)
        {
            return Carbon::parse($value)->toDateTimeString();
        }
    

    问题二

    • 统一json输出时间显示少了八个小时

    image-20210508084248181

    image-20210508084619793

    • 解决方法
    • 在对应的模型中使用方法
      protected function serializeDate(DateTimeInterface $date)
        {
            return $date->format(Carbon::now()->toDateTimeString());
        }
    

    经过实验有一个最终的解决办法

    直接在模型中定义

     # 只要这一条上述的全部删除即可 
    protected function serializeDate(DateTimeInterface $date)
    {
            return $date->format(Carbon::parse($date)->toDateTimeString());
    }
    

    讲解

    这次做项目的时候使用回了laravel8 版本 但是好巧不巧,

    发现不是输出的格式有问题就是输出的时间不准确

    问题解决方案

    问题一

    • 输出的时间格式没有序列化;如图所示

    image-20210508083638940

    • 解决方案

    如果采用代码中格式输出的方式很繁琐以后每次写代码的时候我们都需要格式化

    一下时间然后再输出,这个时候我们可以采用laravel提供的修改器统一的格式化输出时间

    • 在对应的模型中使用修改器
    //不知道修改器如何使用的可以查阅官方文档   
    use CarbonCarbon;    
        public function getCreatedAtAttribute($value)
        {
            # 使用Carbon函数格式化输出时间
            return Carbon::parse($value)->toDateTimeString();
        }
    
        public function getUpdatedAtAttribute($value)
        {
            return Carbon::parse($value)->toDateTimeString();
        }
    

    问题二

    • 统一json输出时间显示少了八个小时

    image-20210508084248181

    image-20210508084619793

    • 解决方法
    • 在对应的模型中使用方法
      protected function serializeDate(DateTimeInterface $date)
        {
            return $date->format(Carbon::now()->toDateTimeString());
        }
    

    经过实验有一个最终的解决办法

    直接在模型中定义

     # 只要这一条上述的全部删除即可 
    protected function serializeDate(DateTimeInterface $date)
    {
            return $date->format(Carbon::parse($date)->toDateTimeString());
    }
    
  • 相关阅读:
    Https的请求过程
    计算机网络知识
    数据结构之图
    Python3线程池进程池
    数据结构之堆heapq
    EffectivePython并发及并行
    EffectivePython类与继承
    EffectivePython并发及并行
    5.19完全数
    5.18数字全排列
  • 原文地址:https://www.cnblogs.com/yaoliuyang/p/14743489.html
Copyright © 2011-2022 走看看