IntlFormatter
in package
FinalYes
Copied from https://github.com/twigphp/intl-extra/blob/2.x/src/IntlExtension.php (c) Fabien Potencier - MIT License.
Tags
Table of Contents
Constants
- DATE_FORMATS = ['none' => \IntlDateFormatter::NONE, 'short' => \IntlDateFormatter::SHORT, 'medium' => \IntlDateFormatter::MEDIUM, 'long' => \IntlDateFormatter::LONG, 'full' => \IntlDateFormatter::FULL]
- NUMBER_ATTRIBUTES = ['grouping_used' => \NumberFormatter::GROUPING_USED, 'decimal_always_shown' => \NumberFormatter::DECIMAL_ALWAYS_SHOWN, 'max_integer_digit' => \NumberFormatter::MAX_INTEGER_DIGITS, 'min_integer_digit' => \NumberFormatter::MIN_INTEGER_DIGITS, 'integer_digit' => \NumberFormatter::INTEGER_DIGITS, 'max_fraction_digit' => \NumberFormatter::MAX_FRACTION_DIGITS, 'min_fraction_digit' => \NumberFormatter::MIN_FRACTION_DIGITS, 'fraction_digit' => \NumberFormatter::FRACTION_DIGITS, 'multiplier' => \NumberFormatter::MULTIPLIER, 'grouping_size' => \NumberFormatter::GROUPING_SIZE, 'rounding_mode' => \NumberFormatter::ROUNDING_MODE, 'rounding_increment' => \NumberFormatter::ROUNDING_INCREMENT, 'format_width' => \NumberFormatter::FORMAT_WIDTH, 'padding_position' => \NumberFormatter::PADDING_POSITION, 'secondary_grouping_size' => \NumberFormatter::SECONDARY_GROUPING_SIZE, 'significant_digits_used' => \NumberFormatter::SIGNIFICANT_DIGITS_USED, 'min_significant_digits_used' => \NumberFormatter::MIN_SIGNIFICANT_DIGITS, 'max_significant_digits_used' => \NumberFormatter::MAX_SIGNIFICANT_DIGITS, 'lenient_parse' => \NumberFormatter::LENIENT_PARSE]
- NUMBER_PADDING_ATTRIBUTES = ['before_prefix' => \NumberFormatter::PAD_BEFORE_PREFIX, 'after_prefix' => \NumberFormatter::PAD_AFTER_PREFIX, 'before_suffix' => \NumberFormatter::PAD_BEFORE_SUFFIX, 'after_suffix' => \NumberFormatter::PAD_AFTER_SUFFIX]
- NUMBER_ROUNDING_ATTRIBUTES = ['ceiling' => \NumberFormatter::ROUND_CEILING, 'floor' => \NumberFormatter::ROUND_FLOOR, 'down' => \NumberFormatter::ROUND_DOWN, 'up' => \NumberFormatter::ROUND_UP, 'halfeven' => \NumberFormatter::ROUND_HALFEVEN, 'halfdown' => \NumberFormatter::ROUND_HALFDOWN, 'halfup' => \NumberFormatter::ROUND_HALFUP]
- NUMBER_STYLES = ['decimal' => \NumberFormatter::DECIMAL, 'currency' => \NumberFormatter::CURRENCY, 'percent' => \NumberFormatter::PERCENT, 'scientific' => \NumberFormatter::SCIENTIFIC, 'spellout' => \NumberFormatter::SPELLOUT, 'ordinal' => \NumberFormatter::ORDINAL, 'duration' => \NumberFormatter::DURATION]
- NUMBER_TYPES = ['default' => \NumberFormatter::TYPE_DEFAULT, 'int32' => \NumberFormatter::TYPE_INT32, 'int64' => \NumberFormatter::TYPE_INT64, 'double' => \NumberFormatter::TYPE_DOUBLE, 'currency' => \NumberFormatter::TYPE_CURRENCY]
Properties
- $dateFormatters : array<string|int, mixed>
- $numberFormatters : array<string|int, mixed>
Methods
- formatCurrency() : string
- formatDate() : string|null
- formatDateTime() : string|null
- formatNumber() : string
- formatTime() : string|null
- convertDate() : DateTimeInterface|null
- createDateFormatter() : IntlDateFormatter
- createNumberFormatter() : NumberFormatter
Constants
DATE_FORMATS
private
mixed
DATE_FORMATS
= ['none' => \IntlDateFormatter::NONE, 'short' => \IntlDateFormatter::SHORT, 'medium' => \IntlDateFormatter::MEDIUM, 'long' => \IntlDateFormatter::LONG, 'full' => \IntlDateFormatter::FULL]
NUMBER_ATTRIBUTES
private
mixed
NUMBER_ATTRIBUTES
= ['grouping_used' => \NumberFormatter::GROUPING_USED, 'decimal_always_shown' => \NumberFormatter::DECIMAL_ALWAYS_SHOWN, 'max_integer_digit' => \NumberFormatter::MAX_INTEGER_DIGITS, 'min_integer_digit' => \NumberFormatter::MIN_INTEGER_DIGITS, 'integer_digit' => \NumberFormatter::INTEGER_DIGITS, 'max_fraction_digit' => \NumberFormatter::MAX_FRACTION_DIGITS, 'min_fraction_digit' => \NumberFormatter::MIN_FRACTION_DIGITS, 'fraction_digit' => \NumberFormatter::FRACTION_DIGITS, 'multiplier' => \NumberFormatter::MULTIPLIER, 'grouping_size' => \NumberFormatter::GROUPING_SIZE, 'rounding_mode' => \NumberFormatter::ROUNDING_MODE, 'rounding_increment' => \NumberFormatter::ROUNDING_INCREMENT, 'format_width' => \NumberFormatter::FORMAT_WIDTH, 'padding_position' => \NumberFormatter::PADDING_POSITION, 'secondary_grouping_size' => \NumberFormatter::SECONDARY_GROUPING_SIZE, 'significant_digits_used' => \NumberFormatter::SIGNIFICANT_DIGITS_USED, 'min_significant_digits_used' => \NumberFormatter::MIN_SIGNIFICANT_DIGITS, 'max_significant_digits_used' => \NumberFormatter::MAX_SIGNIFICANT_DIGITS, 'lenient_parse' => \NumberFormatter::LENIENT_PARSE]
NUMBER_PADDING_ATTRIBUTES
private
mixed
NUMBER_PADDING_ATTRIBUTES
= ['before_prefix' => \NumberFormatter::PAD_BEFORE_PREFIX, 'after_prefix' => \NumberFormatter::PAD_AFTER_PREFIX, 'before_suffix' => \NumberFormatter::PAD_BEFORE_SUFFIX, 'after_suffix' => \NumberFormatter::PAD_AFTER_SUFFIX]
NUMBER_ROUNDING_ATTRIBUTES
private
mixed
NUMBER_ROUNDING_ATTRIBUTES
= ['ceiling' => \NumberFormatter::ROUND_CEILING, 'floor' => \NumberFormatter::ROUND_FLOOR, 'down' => \NumberFormatter::ROUND_DOWN, 'up' => \NumberFormatter::ROUND_UP, 'halfeven' => \NumberFormatter::ROUND_HALFEVEN, 'halfdown' => \NumberFormatter::ROUND_HALFDOWN, 'halfup' => \NumberFormatter::ROUND_HALFUP]
NUMBER_STYLES
private
mixed
NUMBER_STYLES
= ['decimal' => \NumberFormatter::DECIMAL, 'currency' => \NumberFormatter::CURRENCY, 'percent' => \NumberFormatter::PERCENT, 'scientific' => \NumberFormatter::SCIENTIFIC, 'spellout' => \NumberFormatter::SPELLOUT, 'ordinal' => \NumberFormatter::ORDINAL, 'duration' => \NumberFormatter::DURATION]
NUMBER_TYPES
private
mixed
NUMBER_TYPES
= ['default' => \NumberFormatter::TYPE_DEFAULT, 'int32' => \NumberFormatter::TYPE_INT32, 'int64' => \NumberFormatter::TYPE_INT64, 'double' => \NumberFormatter::TYPE_DOUBLE, 'currency' => \NumberFormatter::TYPE_CURRENCY]
Properties
$dateFormatters
private
array<string|int, mixed>
$dateFormatters
= []
$numberFormatters
private
array<string|int, mixed>
$numberFormatters
= []
Methods
formatCurrency()
public
formatCurrency(mixed $amount, string $currency[, array<string|int, mixed> $attrs = [] ][, string|null $locale = null ]) : string
Parameters
- $amount : mixed
- $currency : string
- $attrs : array<string|int, mixed> = []
- $locale : string|null = null
Return values
stringformatDate()
public
formatDate(DateTimeInterface|null $date[, string|null $dateFormat = 'medium' ][, string $pattern = '' ][, DateTimeZone|string|false|null $timezone = null ][, string $calendar = 'gregorian' ][, string|null $locale = null ]) : string|null
Parameters
- $date : DateTimeInterface|null
- $dateFormat : string|null = 'medium'
- $pattern : string = ''
- $timezone : DateTimeZone|string|false|null = null
-
The target timezone, null to use the default, false to leave unchanged
- $calendar : string = 'gregorian'
- $locale : string|null = null
Return values
string|nullformatDateTime()
public
formatDateTime(DateTimeInterface|null $date[, string|null $dateFormat = 'medium' ][, string|null $timeFormat = 'medium' ][, string $pattern = '' ][, DateTimeZone|string|false|null $timezone = null ][, string $calendar = 'gregorian' ][, string|null $locale = null ]) : string|null
Parameters
- $date : DateTimeInterface|null
- $dateFormat : string|null = 'medium'
- $timeFormat : string|null = 'medium'
- $pattern : string = ''
- $timezone : DateTimeZone|string|false|null = null
-
The target timezone, null to use the default, false to leave unchanged
- $calendar : string = 'gregorian'
- $locale : string|null = null
Return values
string|nullformatNumber()
public
formatNumber(mixed $number[, array<string|int, mixed> $attrs = [] ][, string $style = 'decimal' ][, string $type = 'default' ][, string|null $locale = null ]) : string
Parameters
- $number : mixed
- $attrs : array<string|int, mixed> = []
- $style : string = 'decimal'
- $type : string = 'default'
- $locale : string|null = null
Return values
stringformatTime()
public
formatTime(DateTimeInterface|null $date[, string|null $timeFormat = 'medium' ][, string $pattern = '' ][, DateTimeZone|string|false|null $timezone = null ][, string $calendar = 'gregorian' ][, string|null $locale = null ]) : string|null
Parameters
- $date : DateTimeInterface|null
- $timeFormat : string|null = 'medium'
- $pattern : string = ''
- $timezone : DateTimeZone|string|false|null = null
-
The target timezone, null to use the default, false to leave unchanged
- $calendar : string = 'gregorian'
- $locale : string|null = null
Return values
string|nullconvertDate()
private
convertDate(DateTimeInterface|null $date[, mixed $timezone = null ]) : DateTimeInterface|null
Parameters
- $date : DateTimeInterface|null
- $timezone : mixed = null
Return values
DateTimeInterface|nullcreateDateFormatter()
private
createDateFormatter(string|null $locale, string|null $dateFormat, string|null $timeFormat[, string $pattern = '' ][, DateTimeZone|null $timezone = null ][, string $calendarName = 'gregorian' ]) : IntlDateFormatter
Parameters
- $locale : string|null
- $dateFormat : string|null
- $timeFormat : string|null
- $pattern : string = ''
- $timezone : DateTimeZone|null = null
- $calendarName : string = 'gregorian'
Return values
IntlDateFormattercreateNumberFormatter()
private
createNumberFormatter(string|null $locale, string $style[, array<string|int, mixed> $attrs = [] ]) : NumberFormatter
Parameters
- $locale : string|null
- $style : string
- $attrs : array<string|int, mixed> = []