(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
NumberFormatter::setAttribute -- numfmt_set_attribute — Establecer un atributo
Estilo orientado a objetos
$attr
, int $value
) : boolEstilo por procedimientos
Establece un atributo numértico asociado con el formateador. Un ejemplo de un atributo numérico es el número de dígitos enteros que producirá el formateador.
fmtUn objeto de la clase NumberFormatter.
attrEl especificador del atributo - una de las constantes de atributo numérico.
valueEl valor del atributo.
Devuelve TRUE en caso de éxito o FALSE en caso de error.
Ejemplo #1 Ejemplo de numfmt_set_attribute()
<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Dígitos: ".numfmt_get_attribute($fmt, NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
numfmt_set_attribute($fmt, NumberFormatter::MAX_FRACTION_DIGITS, 2);
echo "Dígitos: ".numfmt_get_attribute($fmt, NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
?>
Ejemplo #2 OO example
<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Dígitos: ".$fmt->getAttribute(NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo $fmt->format(1234567.891234567890000)."\n";
$fmt->setAttribute(NumberFormatter::MAX_FRACTION_DIGITS, 2);
echo "Dígitos: ".$fmt->getAttribute(NumberFormatter::MAX_FRACTION_DIGITS)."\n";
echo $fmt->format(1234567.891234567890000)."\n";
?>
El resultado del ejemplo sería:
Dígitos: 3 1.234.567,891 Dígitos: 2 1.234.567,89