企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
https://github.com/briannesbitt/Carbon http://carbon.nesbot.com/docs/ 首先: 在你的app/Providers/AppServiceProvider.php中添 \Carbon\Carbon::setLocale('zh');这一行到boot()方法当中,(为了中文化显示) ~~~ public function boot() { \Carbon\Carbon::setLocale('zh'); } ~~~ 繁体中文的设置是 Carbon::setLocale('zh-TW'), 语言配置文件可在 vendor/nesbot/carbon/src/Carbon/Lang 文件夹下找到。 我看数据库每次插入数据的时候维护created_at这个字段 ~~~ public function show($id) { $article=Article::findorFail($id); dd($article->created_at); } ~~~ 以上会输出 ~~~ Carbon {#158 ▼ +"date": "2017-05-30 11:37:57.000000" +"timezone_type": 3 +"timezone": "PRC" //注意这边要对 } ~~~ 这样好处就是你可以拿到他任意属性,比如 ~~~ dd($article->created_at->year); //2017 dd($article->created_at->month); //5 ~~~ 但是我经常使用的是 ~~~ dd($article->created_at->diffForHumans()); //"26分钟前" ~~~ 如果我们自己定义一个字段 $table->timestamp('published_at'); 也想使用Carbon呢 那么我们可以在模型中写 ~~~ //赋值给dates的这个字段会被当成Carbon来处理 protected $dates=['published_at']; ~~~ 我们可以像上面一样在控制器写 ~~~ dd($article->published_at->diffForHumans()); //"距现在4周" ~~~