所以问题是,我有一个laravel vue项目,这两个项目都是不同的应用程序,我在'timezone'='Aisa/Kolkata'中的apps/app.php中做了更改,因此应用程序显示我所在国家的当地时间.一切都很好,就像在向DB添加新数据时,时间戳是正确的,更新数据时,时间戳也是正确的.但是在获取数据时,时间格式更改为UTC 例如:- 2023-12-15 15:36:11 this is created_at字段和它的正确格式和创建时间也是正确的,但当从laravel获取它时,时间将其格式更改为this 2023-12-15T10:06:11.000000Z.

以下是我的带有屏幕截图的代码示例:

this is the table

这里,Created_at字段的时间戳为2023-12-15 15:36:11,获取时间和数据的代码为

$res = AcCleaning::whereBetween('ac_cleaning_detail.created_at', [$startDate, $endDate])
      ->join('peon_masters as pm', 'pm.peon_id', '=', 'ac_cleaning_detail.peon_ref_id')
      ->join('ac_masters as am', 'am.ac_id', '=', 'ac_cleaning_detail.ac_ref_id')
      ->latest('ac_cleaning_detail.created_at')
      ->select('ac_cleaning_detail.created_at')
      ->get();

      if (sizeof($res) > 0) {
           return $this->successResponseWithData("Fetched Successfully", $res);
      } 
      else {
           return $this->errorResponseWithoutDataWithErrorCode("No Data!!", Config::get('constants.HTTP_STATUS_CODES.NO_CONTENT'));
      }

当使用CREATED_AT时间戳清理AC,但在判断POSTMAN中的数据时,此代码为我提供了时间戳

{
    "status": true,
    "message": "Fetched Successfully",
    "data": [
        {
            "created_at": "2023-12-15T10:06:11.000000Z"
        }
    ]
}

格式和时间自动更改为另一个时区

下面是这个模型

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class AcCleaning extends Model
{
    use HasFactory;
    protected $primaryKey = 'ac_clean_id';
    protected $table = 'ac_cleaning_detail';
    public $fillable = ['peon_ref_id','ac_ref_id','longitude','latitude'];
    public $timestamps = true;
}

我判断了许多解决方案,其中许多都建议在模型中创建另一个方法,将时间戳更改为Carbon实例,但在获取大量数据时如何调用它.

此外,为什么它会自动更改时间.我是不是错过了什么请帮帮我.

我只是希望时间戳应该被提取,因为它是存储.我用的是laravel 10,php 8.2

推荐答案

通过在模型I中定义赋值函数,我得到了答案,克服了日期时间自动更改为另一个时区的问题.

只需将以下代码写入您的模型

 protected function serializeDate(DateTimeInterface $date): string
{
    return Carbon::parse($date);
}

它将自动更改为您在URL/app.php中指定的时区.

Php相关问答推荐

419注册期间Laravel 11中的错误

Laravel:从匹配的数组数据中获取记录

Symfony/Panther Web抓取不适用于登录后的内容(云功能)

PHP DateInterval天数不一致

在Woocommerce变量产品中的标签附近显示所选属性选项名称

使用.htaccess将任何路由重定向到文件

根据WooCommerce中的客户计费国家/地区更改产品价格

根据WooCommerce Cart小计阈值自动应用优惠券

WooCommerce在收据页面获取产品下载URL

woocommerce_available_ payment_gateways 过滤器挂钩多次触发

标签打印机的 CSS

如何在 PHP laravel 中将图像的透明背景转换为白色?

PHP 解析 XML 以获取多个深度的所有字符串值

Golang - Html 模板:如何创建导航项 - 子菜单?我找不到怎么做

避免在 WooCommerce 中多次触发挂钩函数

$_SERVER 超全局变量在 PHP 中是否保证可写?

如何在构建 PHP 类别数组树的递归函数中将父面包屑传递给子项?

我怎样才能在 .htaccess 中有 2 个参数?

是否有适用于 Windows 的真正 64 位版本的 PHP 5.6?

如何在php中获取大于50的年龄