Carbon日期库的使用

diffForHumans

“一个月前”比“30 天前”更便于阅读,很多日期库都提供了这个常见的功能,日期被解析后,有下面两种可能性:

1、当比较的时间A 比 当前默认时间B :xxx前,比如1小时前,5秒前,1年前
2、当比较的时间A 比 当前默认时间B :xxx前,比如1小时后,5秒后,1年后

你可以把第二个参数设置为 true 来删除“前”、“距现在”等修饰语:diffForHumans(Carbon $other, true)。

        echo Carbon::now()->subDays(5)->diffForHumans() . PHP_EOL;               // 5天前
        // 这里Carbon::now()->subDays(5)为 比较时间A,
        // diffForHumans(),第一个参数为空,默认是Carbon::now(),为当前默认时间B,
        // A减去5天和现在比,可不就是:5天前

        echo Carbon::now()->diffForHumans(Carbon::now()->subYear()) . PHP_EOL;   // 11个月后,
        echo Carbon::now()->diffForHumans(Carbon::now()) . PHP_EOL;   // 1秒前
        echo Carbon::now()->diffForHumans(Carbon::now()->subDay()) . PHP_EOL;   // 23小时后

        $dt = Carbon::createFromDate(2011, 8, 1);

        echo $dt->diffForHumans($dt->copy()->addMonth()) . PHP_EOL;              // 1月前
        echo $dt->diffForHumans($dt->copy()->subMonth()) . PHP_EOL;              // 1个月后

        echo Carbon::now()->addSeconds(5)->diffForHumans() . PHP_EOL;            // 4秒后
        echo Carbon::now()->subSeconds(5)->diffForHumans() . PHP_EOL;            // 5秒前

        echo Carbon::now()->subDays(24)->diffForHumans() . PHP_EOL;              // 3周前
        echo Carbon::now()->subDays(24)->diffForHumans(null, true) . PHP_EOL;    // 3周

你可能感兴趣的:(Carbon日期库的使用)