(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
NumberFormatter::parse -- numfmt_parse — Parse a number
Objektorientierter Stil
$string
, int $type
= NumberFormatter::TYPE_DOUBLE, int &$offset
= null
): int|float|falseProzeduraler Stil
$formatter
,$string
,$type
= NumberFormatter::TYPE_DOUBLE,&$offset
= null
Parse a string into a number using the current formatter rules.
formatter
NumberFormatter object.
string
The string to parse for the number.
type
The
formatting type to use. By default,
NumberFormatter::TYPE_DOUBLE
is used.
Note that NumberFormatter::TYPE_CURRENCY
is not supported;
use NumberFormatter::parseCurrency() instead.
offset
Offset in the string at which to begin parsing. On return, this value will hold the offset at which parsing ended.
The value of the parsed number or false
on error.
Beispiel #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";
?>
Beispiel #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";
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
1234567.891 1234567