微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

碳时间戳属性返回错误的日期毫秒

如何解决碳时间戳属性返回错误的日期毫秒

我正在尝试仅根据日、月和年返回解析到当前服务器时区(以 UTC 存储)的日期。出于这个原因,我有一个看起来像这样的函数

private function getFormattedDate(string $stringDate): array
{
    $date = Carbon::createFromFormat(
        'Y-m-d',$stringDate,config('app.timezone')
    );

    return [
        'date' => $date->timestamp,'timezone' => $date->timezoneName,];
}

问题是数组中的 'date' 键总是例如 1577113131(以及每次执行该方法时的连续数字),因此:

  • 第一次执行:1577113515
  • 第二次执行:1577113525
  • 第三次执行:1577113548
  • 等等...

尽管时间戳表示 Y-m-d 中的正确日期,但每次执行该方法时都不应该发生变化。

那么,我该如何解决这个问题并获得毫秒级的时间戳?我已经打印了 'date' Carbon 对象中的内容,它似乎具有正确的日期信息:

^ Carbon\Carbon @1577113734 {#1048
#constructedobjectId: "00000000212d5614000000005c7c5f51"
#localMonthsOverflow: null
#localYearsOverflow: null
#localStrictModeEnabled: null
#localHumanDiffOptions: null
#localToStringFormat: null
#localSerializer: null
#localMacros: null
#localGenericMacros: null
#localFormatFunction: null
#localTranslator: null
#dumpProperties: array:3 []
#dumpLocale: null
date: 2019-12-23 10:08:54.0 America/Bogota (-05:00)
}

预期输出为:

'date' => 1577113734000,'timezone' => 'America/Bogota'

考虑到日期:2019-12-23 10:08:54.0 America/Bogota (-05:00)

解决方法

让我们试试这个,它应该对你有用

django.db.utils.ProgrammingError: relation "token_blacklist_outstandingtoken" does not exist
LINE 1: INSERT INTO "token_blacklist_outstandingtoken" ("user_id","...

你可以像这样改变你的例子:

$format = 'Y-m-d';
$date = Carbon::createFromFormat($format,'2009-02-15');
$nowInMilliseconds = (int) ($date->timestamp . str_pad($date->milli,3,'0',STR_PAD_LEFT));
echo $nowInMilliseconds;
,

使用!

$date = Carbon::createFromFormat(
    '!Y-m-d',$stringDate,config('app.timezone')
);

https://www.php.net/manual/en/datetime.createfromformat.php

createFromFormat 是一个原生 PHP 函数,默认情况下它采用当前时间(您未指定单位的当前值),如果使用 ! 前缀,则每个都取最小值(所以0 表示小时/分钟/秒)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?