Num クラス
Num クラスは、数値を扱うために付加的なフォーマットを行うメソッドを提供します
設定
Num クラスは、数値を特定のフォーマットへ変換する様々なメソッドを提供します。
フォーマットは文字列で表します (ゼロは返り値の数値の部分となります) 。
注意: num コンフィグを変更する場合、app/config/num.php をコピーして設定を変更します。
そうすれば、あなたのカスタム設定を失うことなく簡単にアップグレードができるようになります。
phone |
string |
'(000) 000-0000'
|
電話番号のフォーマット。
|
smart_phone |
array |
array(
7 => '000-0000',
10 => '(000) 000-0000',
11 => '0 (000) 000-0000',
),
|
電話番号の長さに基づいた電話番号の書式。array(長さ => フォーマット)
|
exp |
string |
'00-00'
|
クレジットカードの有効期限のフォーマット。
|
credit_card |
string |
'00-00'
|
クレジットカードの番号を覆い隠すためのフォーマット。
|
bytes($size = 0)
bytes メソッドは、(ファイルサイズの) 数値をバイト値へ変換します。
ファイルサイズは、 'S' 大きさ (1, 8.5, 300 など) と 'B' バイト単位 (K, MiB, GB など) をあわせて 'SB' というフォーマットで定義します。
全ての有効なバイト単位は、 core/lang/en/byte_units.php で定義されています。
静的 |
はい |
パラメータ |
パラメータ |
型 |
デフォルト |
説明 |
$size |
string|int|float |
0
|
変換する文字列。 |
|
返り値 |
float |
例 |
echo Num::bytes('200K'); // 204800
echo Num::bytes('5MiB'); // 5242880
echo Num::bytes('1000'); // 1000
echo Num::bytes('2.5GB'); // 2684354560
|
format_bytes メソッドは、バイト数を人間が読めるフォーマットへ変換します。
静的 |
はい |
パラメータ |
パラメータ |
型 |
デフォルト |
説明 |
$bytes |
int |
0
|
フォーマットする数値。 |
$decimals |
int |
0
|
切り上げする小数点以下の桁数。 |
|
返り値 |
string|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 |
int |
必須 |
フォーマットする数値。 |
$decimals |
int |
0
|
切り上げする小数点以下の桁数。 |
|
返り値 |
string|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 |
string |
''
|
フォーマットする数値。 |
$format |
string |
''
|
フォーマット。 |
|
返り値 |
string |
例 |
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 |
string |
''
|
フォーマットする数値。 |
$format |
string |
''
|
フォーマット。 |
$ignore |
string |
''
|
無視する文字。 |
|
返り値 |
string |
例 |
echo Num::mask_string('1234567812345678', '************0000');
// ************5678
echo Num::mask_string('1234567812345678', '**** **** **** 0000');
// **** **** **** 5678
echo Num::mask_string('1234567812345678', '**** - **** - **** - 0000', ' -');
// **** - **** - **** - 5678
|
format_phone メソッドは、数値を電話番号のフォーマットへ変換します。
静的 |
はい |
パラメータ |
パラメータ |
型 |
デフォルト |
説明 |
$string |
string |
''
|
フォーマットする数値。 |
$format |
string |
null
|
フォーマット。null の場合、format_phone コンフィグの設定がデフォルトになります。 |
|
返り値 |
string |
例 |
echo Num::format_phone('0612345678');
// (061) 234 5678
echo Num::format_phone('0612345678', '(00) 000 000 00');
// (06) 123 456 78
|
smart_format_phone メソッドは、
文字数に基いて数値を電話番号のフォーマットへ変換します。
注意: 数値は長さに基いてフォーマットされます。
それらは、num の設定 の中で定義されています。
静的 |
はい |
パラメータ |
パラメータ |
型 |
デフォルト |
説明 |
$string |
string |
必須 |
フォーマットする数値。 |
|
返り値 |
string |
例 |
echo Num::smart_format_phone('1234567');
// 123-4567
echo Num::smart_format_phone('01234567890');
// 0 (123) 456-7890
|
format_exp メソッドは、数値をクレジットカードの有効期限の文字列へ変換します。
注意: このメソッドは、4 桁の数字が入力されることが期待されています。
静的 |
はい |
パラメータ |
パラメータ |
型 |
デフォルト |
説明 |
$string |
string |
必須 |
フォーマットする数値。 |
$format |
string |
null
|
フォーマット。null の場合、exp コンフィグの設定がデフォルトになります。 |
|
返り値 |
string |
例 |
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 |
string |
''
|
フォーマットする数値。 |
$format |
string |
null
|
フォーマット。null の場合、credit_card コンフィグの設定がデフォルトになります。 |
|
返り値 |
string |
例 |
echo Num::mask_credit_card('1234263583742938');
// **** **** **** 2938
echo Num::mask_credit_card('1234123412341234', '0000 **** **** ****');
// 1234 **** **** ****
|