Carbon 可以获取毫秒级时间戳吗?

如题

查了一下好像没有(难道是我没查到),其实是想问一下大佬们有没有方便的方法在后台直接获取毫秒级时间戳。给大佬跪了

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案
(int)(microtime(true)*1000)
3年前 评论
Checkm8 (楼主) 3年前
忆往昔弹指间 3年前
AlicFeng (作者) 3年前
讨论数量: 14

PHP 获取毫秒级时间戳:

microtime()
// 0.45057400 1590548298
// 结果是分两部分的,也就是前半部分是毫秒(但是单位是秒),后半部分是秒。需要自己处理一下

Carbon 获取指定精度的时间戳:

Carbon::now()->getPreciseTimestamp();

Carbon 源码里有:

    /**
     * Returns a timestamp rounded with the given precision (6 by default).
     *
     * @example getPreciseTimestamp()   1532087464437474 (微秒最大精度)
     * @example getPreciseTimestamp(6)  1532087464437474
     * @example getPreciseTimestamp(5)  153208746443747  (1/100000 秒精度)
     * @example getPreciseTimestamp(4)  15320874644375   (1/10000 秒精度)
     * @example getPreciseTimestamp(3)  1532087464437    (毫秒 precision)
     * @example getPreciseTimestamp(2)  153208746444     (1/100 秒精度)
     * @example getPreciseTimestamp(1)  15320874644      (1/10 秒精度)
     * @example getPreciseTimestamp(0)  1532087464       (秒精度)
     * @example getPreciseTimestamp(-1) 153208746        (10 秒精度)
     * @example getPreciseTimestamp(-2) 15320875         (100 秒精度)
     *
     * @param int $precision
     *
     * @return float
     */
    public function getPreciseTimestamp($precision = 6);
3年前 评论
Checkm8 (楼主) 3年前
Checkm8 (楼主) 3年前
zxdstyle (作者) 3年前
Checkm8 (楼主) 3年前
zxdstyle (作者) 3年前
Checkm8 (楼主) 3年前
  • 13位时间戳

    now()->timestamp . str_limit(now()->micro, 3, '')
  • 16位时间戳

    now()->timestamp . now()->micro
  • 也可以添加快捷方法,方便下次用

  • laravel5.5可以这么写,高版本请参考 carbon 文档
    carbon.nesbot.com/docs/#api-macro

    //返回13位时间戳
    Carbon::macro('microTimestamp', function () {
         return now()->timestamp.str_limit(now()->micro, 3, '');
    });
    dd(Carbon::microTimestamp()); //13位时间戳
3年前 评论
Checkm8 (楼主) 3年前
(int)(microtime(true)*1000)
3年前 评论
Checkm8 (楼主) 3年前
忆往昔弹指间 3年前
AlicFeng (作者) 3年前

现在可以这样

// 位置 vendor/nesbot/carbon/src/Carbon/Carbon.php
// 秒
Carbon::now()->timestamp;
// 毫秒
Carbon::now()->microsecond;
1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!