Подтвердить что ты не робот

Использование метода number_format в Laravel

Я новичок в шаблонах Laravel и Blade.
Может ли кто-нибудь помочь мне показать, как это сделать?

У меня есть вид вот так:

@foreach ($Expenses as $Expense)
    <tr>
        <td>{{{ $Expense->type }}}</td>
        <td>{{{ $Expense->narration }}}</td>
        <td>{{{ $Expense->price }}}</td>
        <td>{{{ $Expense->quantity }}}</td>
        <td>{{{ $Expense->amount }}}</td>                                                            
    </tr>
@endforeach

Я хочу, чтобы $Expense->price и $Expense->amount были отформатированы.
Я попытался использовать его на $Expense->amount как number_format($Expense->amount), но он не сработал.

4b9b3361

Ответ 1

Это должно работать:

<td>{{ number_format($Expense->price, 2) }}</td>

Ответ 2

Если вы используете Eloquent, в вашей модели поставьте:

public function getPriceAttribute($price)
{
    return $this->attributes['price'] = sprintf('U$ %s', number_format($price, 2));
}

Где получить Цена Атрибут - это ваше поле в базе данных. получить Что-то Атрибут.

Ответ 3

Если вы используете Eloquent, лучшим решением является:

public function getFormattedPriceAttribute()
{
    return number_format($this->attributes['price'], 2);
}

Итак, теперь вы должны добавить formattedPrice в свою модель, и вы можете использовать и цену, (в исходном состоянии) и formattedPrice.