Использовать углерод при просмотре laravel
Я хочу использовать Carbon on Views. Я включаю его в верхнюю часть файла views, но он не работает, я делаю это вот так.
<?php use carbon/carbon;?>
@extends('main_layout')
@foreach ($myquery as $mytask)
<tr>
<td >
{{($mytask->firstname)}}
</td>
<td >
{{($mytask->lastname)}}
</td>
<td>
{{($mytask->logon)}}
</td>
@section('content')
@stop
Я просто получаю ошибки. Я хочу преобразовать {{($ mytask- > logon)}} в формат, читаемый человеком, используя углерод
Ответы
Ответ 1
Я хотел бы добавить sommthing, цитируя Laravel Documentation для гуглеров, чтобы добавить, как вы можете преобразовать свои поля datetime SQL в объекты Carbon:
В вашей модели:
protected $dates = ['created_at', 'updated_at', 'disabled_at','mydate'];
Все поля, присутствующие в этом массиве, будут автоматически доступны в ваших представлениях с помощью функций Carbon, таких как:
{{ $article->mydate->diffForHumans() }}
Ответ 2
Вам не нужно добавлять инструкцию использования для углерода в представлении. Просто убедитесь, что $mytask->logon
действительно является углеродным объектом и использует метод format()
, чтобы превратить его в строку
{{ $mytask->logon->format('Y/m/d') }}
Edit:
Если $mytask->logon
- использование углеродного объекта:
{{ $mytask->logon->diffForHumans() }}
Если это еще строка, используйте:
{{ \Carbon\Carbon::createFromTimeStamp(strtotime($mytask->logon))->diffForHumans() }}
Я бы посоветовал сделать это в контроллере или композиторе представления, чтобы ваш взгляд был аккуратным.
Ответ 3
Для laravel 5
Обратите внимание, что если вам нужно выполнить некоторые пользовательские мутации, запустите это в своей модели.
/**
* The string attribute that should be cast to custom carbon date.
*
* @var array
*/
public function getTimeAttribute()
{
return Carbon::createFromTimestampUTC($this->attributes['time']/1000);
}
Не волнуйтесь, вы все равно можете получить доступ к исходному атрибуту.
New = {{ $event->time }} Original = {{ $event->getOriginal('time')}}
Надеюсь, это поможет кому-то, кто не может использовать стандартный способ.
Ответ 4
Использование клинка:
{{ \Carbon\Carbon::parse($mytask->logon)->diffForHumans() }}
Вывод: Для задачи, которая была однажды днем назад
1 day ago
Подробнее о человеко-читаемом времени на Carbon вы можете прочитать - Углеродность для людей