¿Cómo formateo un número a una cantidad en dólares en PHP?
-
08-07-2019 - |
Pregunta
¿Cómo se convierte un número en una cadena que muestra dólares y centavos?
eg:
123.45 => '$123.45'
123.456 => '$123.46'
123 => '$123.00'
.13 => '<*>.13'
.1 => '<*>.10'
0 => '<*>.00'
Solución
PHP también tiene money_format () .
Aquí hay un ejemplo:
echo money_format('$%i', 3.4); // echos '$3.40'
Esta función en realidad tiene toneladas de opciones, vaya a la documentación que he vinculado para verlas.
Nota: money_format no está definido en Windows.
Otros consejos
probé money_format ()
pero no me funcionó en absoluto. Entonces probé el siguiente. Funcionó perfecto para mí. espero que funcione de la manera correcta para ti también :) :)
deberías usar este
number_format($money, 2,'.', ',')
mostrará el número de dinero en términos de formato de dinero de hasta 2 decimales.
En PHP y C ++ puedes usar la función printf ()
printf("$%01.2f", $money);
En php.ini agregue esto (si falta):
#windows
extension=php_intl.dll
#linux
extension=php_intl.so
Entonces haz esto:
$amount = 123.456;
// for Canadian Dollars
$currency = 'CAD';
// for Canadian English
$locale = 'en_CA';
$fmt = new \NumberFormatter( $locale, \NumberFormatter::CURRENCY );
echo $fmt->formatCurrency($amount, $currency);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow