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
$string
, int $type
= NumberFormatter::TYPE_DOUBLE, int &$offset
= null
): int|float|falseProcedural style
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
-
formatter
-
NumberFormatter object.
-
string
-
The string to parse for the number.
-
type
-
The formatting type to use. By default,
NumberFormatter::TYPE_DOUBLE
is used. -
offset
-
Offset 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