(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
NumberFormatter::parse -- numfmt_parse — Разбирает число
Объектно-ориентированный стиль
$string
, int $type
= NumberFormatter::TYPE_DOUBLE, int &$offset
= null
): int|float|falseПроцедурный стиль
$formatter
,$string
,$type
= NumberFormatter::TYPE_DOUBLE,&$offset
= null
Преобразует строку в число, используя правила средства форматирования.
formatter
Объект NumberFormatter.
string
Строка для разбора числа.
type
Используемый
тип форматирования.
По умолчанию используется NumberFormatter::TYPE_DOUBLE
.
Обратите внимание, что константа NumberFormatter::TYPE_CURRENCY
не поддерживается;
воспользуйтесь вместо неё методом NumberFormatter::parseCurrency().
offset
Смещение в строке, с которой начинается синтаксический анализ. При возврате это значение будет содержать смещение, на котором закончился синтаксический анализ.
Значение анализируемого числа или false
в случае возникновения ошибки.
Пример #1 Пример использования numfmt_parse()
<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
$num = "1.234.567,891";
echo numfmt_parse($fmt, $num)."\n";
echo numfmt_parse($fmt, $num, NumberFormatter::TYPE_INT32)."\n";
?>
Пример #2 Пример использования в объектно-ориентированном стиле
<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
$num = "1.234.567,891";
echo $fmt->parse($num)."\n";
echo $fmt->parse($num, NumberFormatter::TYPE_INT32)."\n";
?>
Результат выполнения данного примера:
1234567.891 1234567