It interesting to note that the expected behavior for this function may change according to your ICU version.
In ICU 4.4.2 (standard for Ubuntu 10.* with PHP 5.3.5)
With locale 'en', input of 100,1 returns 1001
In ICU 4.8.1 (standard for Ubuntu 12.* with PHP 5.3.10)
With locale 'en', input of 100,1 returns "false"
Be sure to note your ICU version in phpinfo() to be sure you will get the expected output.NumberFormatter::parse
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
NumberFormatter::parse
Референца за `numberformatter.parse.php` со подобрена типографија и навигација.
NumberFormatter::parse
numfmt_parse
Класата Collator
NumberFormatter::parse -- numfmt_parse — Парсирај број
= NULL
Напиши целосна ознака на елемент
$string, int $type = NumberFormatter::TYPE_DOUBLE, int &$offset = null): int|float|falseПроцедурален стил
NumberFormatter
$formatter,string
$string,int
$type = NumberFormatter::TYPE_DOUBLE,int
&$offset = null): int|float|false
Парсирај стринг во број користејќи ги тековните правила на форматирање.
Параметри
formatter-
NumberFormatter object.
string-
Стрингот за парсирање на бројот.
type-
На тип на форматирање за користење. Стандардно,
NumberFormatter::TYPE_DOUBLEсе користи. Забележи декаNumberFormatter::TYPE_CURRENCYне е поддржано; користете NumberFormatter::parseCurrency() instead. offset-
Позиција во стрингот од каде да се започне со парсирање. При враќање, оваа вредност ќе ја задржи позицијата каде заврши парсирањето.
Вратени вредности
Вредноста на парсираниот број или false при грешка.
Примери
Пример #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";
?>Пример #2 OO пример
<?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";
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
1234567.891 1234567
Види Исто така
- numfmt_get_error_code() - Земете атрибут
- numfmt_format() - Создајте форматирач на броеви
- numfmt_parse_currency() - Парсирајте број
Белешки од корисници 2 забелешки
'en_EN':
basically the first part is the language and the second part the region:
'en_EN' - english, England
'en_US' - english, United States
You can lookup the language tags like 'en_EN' here:
https://datahub.io/core/language-codes
see "ietf-language-tags"