函式名稱:NumberFormatter::parse()
適用版本:PHP 5 >= 5.3.0, PHP 7
函式描述:NumberFormatter::parse() 函式將字串解析為數字,並返回解析後的數字。該函式使用 NumberFormatter 物件來執行解析操作。
語法:public mixed NumberFormatter::parse(string $value, int &$position [, int &$parse_type])
引數:
- $value:要解析的字串。
- $position:一個引用引數,用於儲存解析的位置。當解析失敗時,該引數將儲存解析失敗的位置。
- $parse_type(可選):指定解析型別的常量。預設值為 NumberFormatter::TYPE_DOUBLE。可選的解析型別常量有:
- NumberFormatter::TYPE_DOUBLE:解析為浮點數。
- NumberFormatter::TYPE_INT32:解析為32位整數。
- NumberFormatter::TYPE_INT64:解析為64位整數。
返回值:
- 成功時,返回解析後的數字。
- 失敗時,返回 false。
示例:
$number = "1,234.56";
$formatter = new NumberFormatter('en_US', NumberFormatter::DECIMAL);
$position = 0;
$result = $formatter->parse($number, $position);
if ($result !== false) {
echo "解析成功:$result";
} else {
echo "解析失敗";
}
// 輸出:解析成功:1234.56
在上面的示例中,我們首先建立了一個 NumberFormatter 物件,指定了地區為 'en_US',並設定解析型別為 NumberFormatter::DECIMAL。然後,我們將字串 "1,234.56" 傳遞給 parse() 函式進行解析。解析成功後,函式會返回解析後的數字 1234.56,並將解析的位置儲存在 $position 變數中。最後,我們根據解析結果進行相應的處理。