(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
NumberFormatter::setTextAttribute -- numfmt_set_text_attribute — Устанавливает текстовый атрибут
Объектно-ориентированный стиль
Процедурный стиль
Устанавливает текстовый атрибут, связанный со средством форматирования. Примером текстового атрибута
является суффикс для положительных чисел. Если средство форматирования не понимает атрибут,
выдаётся ошибка U_UNSUPPORTED_ERROR
.
Средства форматирования на основе правил понимают только NumberFormatter::DEFAULT_RULESET
и
NumberFormatter::PUBLIC_RULESETS
.
formatter
Объект NumberFormatter.
attribute
Спецификатор атрибута - одна из констант текстового атрибута.
value
Текст для значения атрибута.
Возвращает true
в случае успешного выполнения или false
в случае возникновения ошибки.
Пример #1 Пример использования numfmt_set_text_attribute()
<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Префикс: ".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 "Префикс: ".numfmt_get_text_attribute($fmt, NumberFormatter::NEGATIVE_PREFIX)."\n";
echo numfmt_format($fmt, -1234567.891234567890000)."\n";
?>
Пример #2 Пример использования в объектно-ориентированном стиле
<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Префикс: ".$fmt->getTextAttribute(NumberFormatter::NEGATIVE_PREFIX)."\n";
echo $fmt->format(-1234567.891234567890000)."\n";
$fmt->setTextAttribute(NumberFormatter::NEGATIVE_PREFIX, "MINUS");
echo "Префикс: ".$fmt->getTextAttribute(NumberFormatter::NEGATIVE_PREFIX)."\n";
echo $fmt->format(-1234567.891234567890000)."\n";
?>
Результат выполнения приведённого примера:
Префикс: - -1.234.567,891 Префикс: MINUS MINUS1.234.567,891