NumberFormatter::setTextAttribute

numfmt_set_text_attribute

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)

NumberFormatter::setTextAttribute -- numfmt_set_text_attribute β€” УстанавливаСт тСкстовый Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚

ОписаниС

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ

public function NumberFormatter::setTextAttribute(int $attribute, string $value): bool

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ

function numfmt_set_text_attribute(NumberFormatter $formatter, int $attribute, string $value): bool

УстанавливаСт тСкстовый Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚, связанный со срСдством форматирования. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ тСкстового Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° являСтся суффикс для ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… чисСл. Если срСдство форматирования Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚, выдаётся ошибка 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

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

  • numfmt_get_error_code() - ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ послСдний ΠΊΠΎΠ΄ ошибки срСдства форматирования
  • numfmt_get_text_attribute() - ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ тСкстовый Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚
  • numfmt_set_attribute() - УстанавливаСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° форматирования чисСл
οΌ‹Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π΅Ρ‰Ρ‘ Π½Π΅ добавляли примСчания для страницы