NumberFormatter::parse
numfmt_parse
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
NumberFormatter::parse -- numfmt_parse — Parse a number
Description
Object-oriented style
public NumberFormatter::parse(string
$string, int $type = NumberFormatter::TYPE_DOUBLE, int &$offset = null): int|float|falseProcedural style
numfmt_parse(
NumberFormatter
string
int
int
): int|float|false
NumberFormatter
$formatter,string
$string,int
$type = NumberFormatter::TYPE_DOUBLE,int
&$offset = null): int|float|false
Parse a string into a number using the current formatter rules.
Parameters
formatterNumberFormatter object.
stringThe string to parse for the number.
typeThe formatting type to use. By default,
NumberFormatter::TYPE_DOUBLEis used. Note thatNumberFormatter::TYPE_CURRENCYis not supported; use NumberFormatter::parseCurrency() instead.offsetOffset in the string at which to begin parsing. On return, this value will hold the offset at which parsing ended.
Return Values
The value of the parsed number or false on error.
Examples
Example #1 numfmt_parse() example
<?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";
?>Example #2 OO example
<?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";
?>The above example will output:
1234567.891 1234567
See Also
- numfmt_get_error_code() - Get formatter's last error code
- numfmt_format() - Format a number
- numfmt_parse_currency() - Parse a currency number
↑ and ↓ to navigate • Enter to select • Esc to close • / to open