(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
NumberFormatter::setTextAttribute -- numfmt_set_text_attribute — Set a text attribute
Estilo orientado a objetos
$attr
, string $value
) : boolEstilo por procedimientos
Establece un atributo de texto asociado al formateador. Un ejemplo de un atributo de
texto es el sufijo de números positivos. Si el formateador no
entiende el atributo, se producirá un error de tipo
U_UNSUPPORTED_ERROR.
Los formateadores basados en reglas sólo entienden
NumberFormatter::DEFAULT_RULESET y
NumberFormatter::PUBLIC_RULESETS.
fmtUn objeto de la clase NumberFormatter.
attrEl especificador del atributo - una de las constanes de atributo de texto.
valueEl texto para el valor del atributo.
Devuelve TRUE en caso de éxito o FALSE en caso de error.
Ejemplo #1 Ejemplo de numfmt_set_text_attribute()
<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Prefijo: ".numfmt_get_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX)."\n";
echo numfmt_format($fmt, -1234567.891234567890000)."\n";
numfmt_set_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX, "MINUS");
echo "Prefijo: ".numfmt_get_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX)."\n";
echo numfmt_format($fmt, -1234567.891234567890000)."\n";
?>
Ejemplo #2 OO example
<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Prefijo: ".$fmt->getTextAttribute(NumberFormatter::NEGATIVE_PREFIX)."\n";
echo $fmt->format(-1234567.891234567890000)."\n";
$fmt->setTextAttribute(NumberFormatter::NEGATIVE_PREFIX, "MINUS");
echo "Prefijo: ".$fmt->getTextAttribute(NumberFormatter::NEGATIVE_PREFIX)."\n";
echo $fmt->format(-1234567.891234567890000)."\n";
?>
El resultado del ejemplo sería:
Prefijo: - -1.234.567,891 Prefijo: MINUS MINUS1.234.567,891