我正在使用Laravel5.2,我想展示文章的创作时间如下:
created_at displaying
in 1 day today
2-10 days (2-10) days ago
>10 days show creation date directly
该怎么做呢?
提前感谢!
编辑:
主计长:
public function show($id)
{
$article = Article::findOrFail($id);
return view('show', compact('article'));
}
意见:
<div class="card">
<div class="card-block">
<h4 class="card-title">{{$article->title}}</h4>
<p class="card-text">{{$article->content}}</p>
<p class="card-text"><small class="text-muted">{{$article->created_at}}</small></p>
</div>
</div>
我应该在哪里使用Carbon
的diffForHumans()
?
发布于 2016-06-09 15:08:49
您可以为自定义属性定义存取者
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
use Carbon\Carbon;
class User extends Model
{
public function getPrettyCreatedAtAttribute()
{
$now = Carbon::now();
$age = $this->created_at->diffInDays($now);
if ($age < 2) {
return 'today';
}
elseif ($age < 10) {
return '(2-10) days ago';
}
else {
return $this->created_at;
}
}
}
然后在视野中
<div class="card">
<div class="card-block">
<h4 class="card-title">{{$article->title}}</h4>
<p class="card-text">{{$article->content}}</p>
<p class="card-text"><small class="text-muted">{{$article->pretty_created_at}}</small></p>
</div>
</div>
发布于 2016-05-08 19:32:55
你检查过人类特征的碳差异了吗?
http://carbon.nesbot.com/docs/#api-humandiff
由于默认情况下,created_at
字段是一个碳实例,所以可以对其调用Carbon方法,如下所示:
$post->created_at->diffForHumans()
发布于 2016-05-08 19:33:39
您可以为人类尝试\Carbon\Carbon
类和diff,如下所示:
http://carbon.nesbot.com/docs/#api-humandiff
https://stackoverflow.com/questions/37103934
复制相似问题