Показатель Laravel для плавания не работает - PullRequest
0 голосов
/ 01 июля 2018

выпуск

У меня очень маленькое число 0.00000064 с типом данных double(20,8). Я вижу число как 6.4E-7.

В моей модели я пытаюсь привести столбец следующим образом:

protected $casts = [
    'total_crypto_balance' => 'float'
];

но я все еще получаю этот показатель степени обратно.

Ожидая

для получения числа 0.00000064 в поле зрения, а не показателя степени 6.4E-7.

Что я здесь не так делаю?

Ответы [ 2 ]

0 голосов
/ 01 июля 2018

Апокрыфос выложен до меня, поэтому я пометил его как правильный ответ.

Еще только здесь, чтобы показать другой путь:

public function getTotalCryptoBalanceAttribute($value)
{
    return sprintf('%.8f', $value);
}
0 голосов
/ 01 июля 2018

То, что вам нужно, - это форматирование чисел, потому что 0.0000064 - это то же самое, что и 6.4e-7, и вас интересует только то, что видит конечный пользователь.

Вы можете определить аксессор , чтобы сделать это:

 public function getTotalCryptoBalanceAttribute() {
       return number_format($this->attributes['total_crypto_balance'], 8); // format with 8 decimals
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...