(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
NumberFormatter::setTextAttribute -- numfmt_set_text_attribute — Set a text attribute
Estilo orientado a objetos
Estilo 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
.
fmt
Un objeto de la clase NumberFormatter.
attr
El especificador del atributo - una de las constanes de atributo de texto.
value
El 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