(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
NumberFormatter::setTextAttribute -- numfmt_set_text_attribute — Define um atributo de texto
Estilo orientado a objetos
Estilo procedural
Define um atributo de texto associado ao formatador. Um exemplo de um atributo
de texto é o sufixo para números positivos. Se o formatador não
entender o atributo,
o erro U_UNSUPPORTED_ERROR
é produzido. Formatadores baseados em regras somente entendem
NumberFormatter::DEFAULT_RULESET
e
NumberFormatter::PUBLIC_RULESETS
.
formatter
Objeto NumberFormatter.
attribute
Especificador de atributo - uma das constantes de atributo de texto.
value
Texto para o valor do atributo.
Retorna true
em caso de sucesso ou false
em caso de falha.
Exemplo #1 Exemplo de numfmt_set_text_attribute()
<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Prefixo: ".numfmt_get_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX)."\n";
echo numfmt_format($fmt, -1234567.891234567890000)."\n";
numfmt_set_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX, "MENOS");
echo "Prefixo: ".numfmt_get_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX)."\n";
echo numfmt_format($fmt, -1234567.891234567890000)."\n";
?>
Exemplo #2 Exemplo OO
<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Prefixo: ".$fmt->getTextAttribute(NumberFormatter::NEGATIVE_PREFIX)."\n";
echo $fmt->format(-1234567.891234567890000)."\n";
$fmt->setTextAttribute(NumberFormatter::NEGATIVE_PREFIX, "MENOS");
echo "Prefixo: ".$fmt->getTextAttribute(NumberFormatter::NEGATIVE_PREFIX)."\n";
echo $fmt->format(-1234567.891234567890000)."\n";
?>
O exemplo acima produzirá:
Prefixo: - -1.234.567,891 Prefixo: MENOS MENOS1.234.567,891