函式名稱:NumberFormatter::setAttribute()
適用版本:PHP 5 >= 5.3.0, PHP 7, PHP 8
用法:NumberFormatter::setAttribute() 函式用於設定 NumberFormatter 物件的屬性。
語法:bool NumberFormatter::setAttribute(int $attribute, int|float $value)
引數:
$attribute:要設定的屬性的常量值。可以是以下常量之一:
- NumberFormatter::PARSE_INT_ONLY:設定是否僅解析整數。
- NumberFormatter::GROUPING_USED:設定是否使用分組分隔符。
- NumberFormatter::DECIMAL_ALWAYS_SHOWN:設定是否始終顯示小數點後的零。
- NumberFormatter::MAX_INTEGER_DIGITS:設定最大整數位數。
- NumberFormatter::MIN_INTEGER_DIGITS:設定最小整數位數。
- NumberFormatter::INTEGER_DIGITS:設定整數位數。
- NumberFormatter::MAX_FRACTION_DIGITS:設定最大小數位數。
- NumberFormatter::MIN_FRACTION_DIGITS:設定最小小數位數。
- NumberFormatter::FRACTION_DIGITS:設定小數位數。
- NumberFormatter::ROUNDING_MODE:設定舍入模式。
- NumberFormatter::ROUNDING_INCREMENT:設定舍入增量。
- NumberFormatter::FORMAT_WIDTH:設定格式化寬度。
- NumberFormatter::PADDING_POSITION:設定填充位置。
- NumberFormatter::SECONDARY_GROUPING_SIZE:設定次要分組大小。
- NumberFormatter::SIGNIFICANT_DIGITS_USED:設定是否使用有效數字。
- NumberFormatter::MIN_SIGNIFICANT_DIGITS:設定最小有效數字位數。
- NumberFormatter::MAX_SIGNIFICANT_DIGITS:設定最大有效數字位數。
- NumberFormatter::LENIENT_PARSE:設定是否寬鬆解析。
$value:屬性的值。可以是整數或浮點數,具體取決於屬性。
返回值:如果設定成功則返回 true,否則返回 false。
示例:
$number = 1234.5678;
$fmt = new NumberFormatter('en_US', NumberFormatter::DECIMAL);
// 設定最小整數位數為3
$fmt->setAttribute(NumberFormatter::MIN_INTEGER_DIGITS, 3);
// 設定最小小數位數為2
$fmt->setAttribute(NumberFormatter::MIN_FRACTION_DIGITS, 2);
// 設定最大小數位數為4
$fmt->setAttribute(NumberFormatter::MAX_FRACTION_DIGITS, 4);
// 格式化數字
$formatted = $fmt->format($number);
echo $formatted; // 輸出:1,234.5678
在上面的示例中,我們建立了一個 NumberFormatter 物件,並使用 setAttribute()
方法設定了最小整數位數為3,最小小數位數為2,最大小數位數為4。然後,我們使用 format()
方法將數字格式化為字串,並將結果輸出。最終輸出的結果為 "1,234.5678"。