Laravel 5.6 时间前的浏览量
Laravel 5.6 time ago in views
<?php
namespace project1\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use View;
class IndexController extends Controller
{
public function index()
{
$users = DB::table('users')->orderBy('created_at','desc')->limit(5)->get();
return View::make('pages.dashboard.dashboard',['users' => $users]);
}
}
是否可以在我的视图中回显 Time Ago (pages.dashboard.dashboard) 之类的东西,
{{ $user->created_at->diffForHumans() }}
期待像这样的输出,
1 min ago
也许对你有帮助
Eloquent 中时间戳的一个很好的半隐藏特性是它们不只是来自数据库的 return 字符串——它们实际上是 return Carbon 的一个实例,一个很棒的PHP 的 DateTime 库的扩展。这意味着一堆函数(我的意思是一堆)在您的模型的时间戳上可用。值得通读 GitHub 自述文件以了解可用的内容,但最酷的方法之一是 diffForHumans(),这是一个方便的小函数,提供了我们经常需要的长期追捧的 "time ago" 格式。
$user = User::first();
echo $user->created_at->diffForHumans(); // 2 days ago
$user->touch();
echo $user->created_at->diffForHumans(); // a second ago
或
如果created_date是Carbon\Carbon的一个实例,你可以这样做:
$row->created_date->diffForHumans()
如果它不是 Carbon 的一个实例,你可以这样做:
(new Carbon\Carbon($row->created_date))->diffForHumans()
或者您将模型 属性 添加到模型中的 $dates
转换列表,这将在您访问它时将 属性 转换为 Carbon
实例(喜欢 $user->created_date
):
class User
{
protected $dates = [
'created_date',
];
}
如果模型的 $timestamps
设置为 true
,字段 created_at
和 updated_at
会自动添加到此演员表中。如果启用软删除,也会添加 deleted_at
。
首先,尝试 eloquent 模型。
$users = App\User::orderBy('created_at','desc')->limit(5)->get();
可见
@foreach($users as $user) {{$user->created_at->diffForHumans()}} @endforeach
根据您的情况
$users = DB::table('users')->orderBy('created_at','desc')->limit(5)->get();
@foreach($users as $user)
{{ Carbon\Carbon::parse($user->created_at)->diffForHumans()}}
@endforeach
说明
eloquent 模型自动转换为 Carbon 实例,您可以使用所有方法
在 数据库查询日期 (created_at) 的情况下无法解析,因此我们必须手动解析。
在你的时间后写->diffForHumans();
。
喜欢 $record->created_date->diffForHumans();
Laravel 5.5> 随便写
{{ $date->created_at->diffForHumans() }}
Returns 之前什么时候
<?php
namespace project1\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use View;
class IndexController extends Controller
{
public function index()
{
$users = DB::table('users')->orderBy('created_at','desc')->limit(5)->get();
return View::make('pages.dashboard.dashboard',['users' => $users]);
}
}
是否可以在我的视图中回显 Time Ago (pages.dashboard.dashboard) 之类的东西,
{{ $user->created_at->diffForHumans() }}
期待像这样的输出,
1 min ago
也许对你有帮助
Eloquent 中时间戳的一个很好的半隐藏特性是它们不只是来自数据库的 return 字符串——它们实际上是 return Carbon 的一个实例,一个很棒的PHP 的 DateTime 库的扩展。这意味着一堆函数(我的意思是一堆)在您的模型的时间戳上可用。值得通读 GitHub 自述文件以了解可用的内容,但最酷的方法之一是 diffForHumans(),这是一个方便的小函数,提供了我们经常需要的长期追捧的 "time ago" 格式。
$user = User::first();
echo $user->created_at->diffForHumans(); // 2 days ago
$user->touch();
echo $user->created_at->diffForHumans(); // a second ago
或
如果created_date是Carbon\Carbon的一个实例,你可以这样做:
$row->created_date->diffForHumans()
如果它不是 Carbon 的一个实例,你可以这样做:
(new Carbon\Carbon($row->created_date))->diffForHumans()
或者您将模型 属性 添加到模型中的 $dates
转换列表,这将在您访问它时将 属性 转换为 Carbon
实例(喜欢 $user->created_date
):
class User
{
protected $dates = [
'created_date',
];
}
如果模型的 $timestamps
设置为 true
,字段 created_at
和 updated_at
会自动添加到此演员表中。如果启用软删除,也会添加 deleted_at
。
首先,尝试 eloquent 模型。
$users = App\User::orderBy('created_at','desc')->limit(5)->get();
可见
@foreach($users as $user) {{$user->created_at->diffForHumans()}} @endforeach
根据您的情况
$users = DB::table('users')->orderBy('created_at','desc')->limit(5)->get();
@foreach($users as $user)
{{ Carbon\Carbon::parse($user->created_at)->diffForHumans()}}
@endforeach
说明
eloquent 模型自动转换为 Carbon 实例,您可以使用所有方法
在 数据库查询日期 (created_at) 的情况下无法解析,因此我们必须手动解析。
在你的时间后写->diffForHumans();
。
喜欢 $record->created_date->diffForHumans();
Laravel 5.5> 随便写
{{ $date->created_at->diffForHumans() }}
Returns 之前什么时候