Reputation: 73
How to use Carbon in Laravel 5.2 without use Carbon\Carbon;
added in every View and Controller..?
Upvotes: 6
Views: 28233
Reputation: 2232
Here's what I have on my helpers.php
function myCarbon($date)
{
return $date != '' ? \Carbon\Carbon::parse($date) : '-';
}
Then on any controllers and views:
myCarbon($model->field)->format('F d, Y');
And since I usually have mm/dd/yyyy
and mm/dd/yyyy H:i
on my blades, I have these on my helper file:
function mydateFormat($date)
{
return $date != '' ? myCarbon($date)->format('m/d/Y') : '-';
}
function mytimeFormat($date)
{
return $date != '' ? myCarbon($date)->format('H:i') : '-';
}
function mydateTime($date)
{
return $date != '' ? myCarbon($date)->format('m/d/Y H:i') : '-';
}
Now you can use this application-wide on any controllers and views.
(note: function names are sample only, not what actually I am using, change based on your need)
Upvotes: 0
Reputation: 703
Add the following line to the aliases array in the config/app.php:
'Carbon' => 'Carbon\Carbon'
And you need to add use Carbon;
every class where you want to use it.
Upvotes: 21
Reputation: 16364
You can declare some fields in your models using the following structure:
protected $dates = ['created_at', 'updated_at', 'disabled_at','mydate'];
All of those fields will automatically be Carbon instances and you will be able to use them in your views like:
{{ $article->mydate->diffForHumans() }}
This is the answer I provided some time ago here.
And here is the documentation from Laravel for that
Upvotes: 2