目录
当前位置: 首页 > 文档资料 > FuelPHP 中文文档 >

Num - 类別

优质
小牛编辑
140浏览
2023-12-01

Num 类别提供额外的格式化方法与数值协作

配置

类别提供不同的方法以格式化某些类型的数字。 格式是字串,其中 0 代表回传值的数字部分。

请注意:当变更 Num 配置,複製档案至 app/config/num.php 并变更设定,这能易于升级而不失去你的自订设定。

类型预设描述
phone字串
'(000) 000-0000'
预设的电话号码格式。
smart_phone阵列
array(
	7  => '000-0000',
	10 => '(000) 000-0000',
	11 => '0 (000) 000-0000',
),
基于号码长度的电话号码格式。(长度 => 格式)
exp字串
'00-00'
信用卡到期日的预设格式。
credit_card字串
'00-00'
信用卡号码遮罩预设格式。

bytes($size = 0)

bytes 方法转换数字(档案大小)为位元组值。 档案大小定义的格式为:SB,其中 S 是大小(1、8.5、300等),B 是位元组单位(K、MiB、GB、等)。 所有有效的位元组单位被定义于 core/lang/en/byte_units.php

静态
参数
参数类型预设描述
$size字串|整数|浮点数
0
要转换的字串。
回传浮点数
範例
echo Num::bytes('200K');  // 204800
echo Num::bytes('5MiB');  // 5242880
echo Num::bytes('1000');  // 1000
echo Num::bytes('2.5GB'); // 2684354560

format_bytes($bytes = 0, $decimals = 0)

format_bytes 方法转换位元组数字为可读的格式。

静态
参数
参数类型预设描述
$bytes整数
0
要格式化的数字。
$decimals整数
0
要四捨五入的小数位数。
回传字串|false
範例
echo Num::format_bytes('204800');     // 200 kB
echo Num::format_bytes('214901', 1);  // 209.9 kB
echo Num::format_bytes('2249010', 1); // 2.1 MB
echo Num::format_bytes('badbytes');   // false

quantity($num, $decimals = 0)

quantity 方法转换数字为可读的格式。

静态
参数
参数类型预设描述
$num整数必要要格式化的数字。
$decimals整数
0
要四捨五入的小数位数。
回传字串|false
範例
echo Num::quantity(7000);        // 7K
echo Num::quantity(7500);        // 8K
echo Num::quantity(7500, 1);     // 7.5K
echo Num::quantity('badnumber'); // false

format($string = '', $format = '')

format 方法转换数字为所给的格式。

静态
参数
参数类型预设描述
$string字串
''
要格式化的数字。
$format字串
''
格式。
回传字串
範例
echo Num::format('1234567890', '(000) 000-0000'); // (123) 456-7890
echo Num::format('1234567890', '000.000.0000');   // 123.456.7890
echo Num::format('1234567890', '000.000.0000');   // 123.456.7890
echo Num::format('1', '000.000.000');             // 1..

mask_string($string = '', $format = '', $ignore = ' ')

mask_string 方法转换数字为所给的格式。

静态
参数
参数类型预设描述
$string字串
''
要格式化的数字。
$format字串
''
格式。
$ignore字串
''
要忽略的字元。
回传字串
範例
echo Num::mask_string('1234567812345678', '************0000');
// ************5678

echo Num::mask_string('1234567812345678', '**** **** **** 0000');
// **** **** **** 5678

echo Num::mask_string('1234567812345678', '**** - **** - **** - 0000', ' -');
// **** - **** - **** - 5678

format_phone($string = '', $format = null)

format_phone 方法转换数字为所给的格式。

静态
参数
参数类型预设描述
$string字串
''
要格式化的数字。
$format字串
null
格式。当 null 时预设指向 format_phone 配置设定。
回传字串
範例
echo Num::format_phone('0612345678');
// (061) 234 5678

echo Num::format_phone('0612345678', '(00) 000 000 00');
// (06) 123 456 78

smart_format_phone($string)

smart_format_phone 方法基于号码长度, 转换数字为电话号码格式。

请注意: 数字依据长度被格式化, 这些定义在 num 配置

静态
参数
参数类型预设描述
$string字串必要要格式化的数字。
回传字串
範例
echo Num::smart_format_phone('1234567');
// 123-4567

echo Num::smart_format_phone('01234567890');
// 0 (123) 456-7890

format_exp($string, $format = null)

format_exp 方法转换数字为信用卡到期日字串。

请注意: 此方法预计提供 4 位数。

静态
参数
参数类型预设描述
$string字串必要要格式化的数字。
$format字串
null
格式。当 null 时预设指向 exp 配置设定。
回传字串
範例
echo Num::format_exp('1234');
// 12-34

echo Num::format_exp('1234', '00/00');
// 12/34

mask_credit_card($string, $format = null)

mask_credit_card 方法遮罩一组信用卡号码。

静态
参数
参数类型预设描述
$string字串
''
要格式化的数字。
$format字串
null
格式。当 null 时预设指向 credit_card 配置设定。
回传字串
範例
echo Num::mask_credit_card('1234263583742938');
// **** **** **** 2938

echo Num::mask_credit_card('1234123412341234', '0000 **** **** ****');
// 1234 **** **** ****