NumberFormatter::parse

numfmt_parse

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

NumberFormatter::parse -- numfmt_parseРазбирает число

Описание

Объектно-ориентированный стиль

publicNumberFormatter::parse(string$string, int$type = NumberFormatter::TYPE_DOUBLE, int&$offset = null): int|float|false

Процедурный стиль

numfmt_parse(
    NumberFormatter$formatter,
    string$string,
    int$type = NumberFormatter::TYPE_DOUBLE,
    int&$offset = null
): int|float|false

Преобразовывает строку в число по правилам средства форматирования.

Список параметров

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

Смотрите также

To Top