2016-01-12 2 views
1

Это моя сущность:Как управлять количеством десятичных знаков после десятичной точки?

/** 
    * @var decimal 
    * 
    * @ORM\Column(name="measure", type="decimal", scale=3) 
    */ 

    private $measure; 

Я хочу, чтобы вычислить различные меры, как:

$entity->measure = 0.250-0.500; 

Моя проблема заключается в том, что мой вход 0.250 хранится в 0.25.

Интересно, как заставить его хранить три цифры после десятичной точки независимо от того, являются ли они нулевыми.

+0

Ваш вопрос не был отмечен как лучший способ, так как это скорее php-only. Кроме того, при формулировке вопроса старайтесь держать его кратким. Для вашего случая использования не имело значения, что вы вычисляете количество жидкости определенным образом, у вас есть значение и хотите, чтобы он появился определенным образом. Я перефразировал ваш вопрос в редакции. – k0pernikus

+0

Извините, но я из argentina, и я не очень хорошо говорю. – Geronimo

+0

Нечего жалеть. =) Каждый должен где-то начинать. – k0pernikus

ответ

2

Храните его как поплавок, вам не нужен нуль в базе данных.

Для форматирования номера при его использовании: number_format.

<?php 
echo number_format(.25,3); // outputs "0.250", depending on your locale may output "0,250" 

Когда вы храните значение, его представление не должно определять способ его хранения.

+0

Вы также можете использовать printf ("%. 3f", $ my_number); –