2012-07-16 23 views
8

matemáticas simples:php, añadir ceros a la derecha si el número es entero

$a=$b/$c; echo $a; 

si b es igual a $ 123.00 y $ c es igual a 1, entonces se convierte en un $ 123.

Si b es $ 123.50 , $ c es 1, $ a es 123.50. Pero en el primer caso, quiero que $ a sea 123.00.

Es posible comprobar si $ a tiene alguna parte de fracción diferente de cero y luego agregar los ceros finales según sea necesario.

Pero estoy buscando funciones de PHP para hacer lo mismo. ¿Posible?

EDIT:

¿Qué pasa si no quiero que comas de los number_format allí?

+0

¿Qué pasa con floor() y using number_format() para la salida? –

+0

en una fila de la tabla, otros números son decimales. Así que quiero este número en formato decimal también. –

+0

posible duplicado de [Convertir cadenas en números sin perder decimales] (http://stackoverflow.com/questions/30677082/convert-strings-to-numbers-without-losing-decimals) –

Respuesta

23

uso sprintf("%0.2f",$a);. docs

+4

+1 Para la única respuesta correcta aquí :) – nickb

+0

@nickb ¿Cómo es eso correcto - http://codepad.viper-7.com/ naZQVN? ¿O no estoy viendo algo? –

+0

@ZoltanToth - Desde el OP: Pero en el primer caso, ** Quiero que $ a sea 123.00. ** – nickb

6

Utilice la función number_format. Si usted no quiere separadores de coma, establecer los cuatro parámetros de la función como tal (el separador de miles es el cuarto parámetro):

$number = number_format(1234, 2, '.', ''); 
+0

El enlace a la función 'number_format()' sería más útil. – Lion

+0

@Pallad Mira mi edición por favor –

+0

@IstiaqueAhmed Mira mi edición. – Palladium

1

Sí, de esta manera:

$a = 123; 
$answer = number_format($a,"2"); 
echo $answer; 
+0

mira mi edición por favor –

Cuestiones relacionadas