Numbers_Roman は、 アラビア数字 (23 のような形式) をローマ数字 (XXIII のような形式) に変換したり、その逆の変換をしたりするメソッドを提供します。
注意 どちらのメソッドも静的メソッドなので、 オブジェクトのインスタンスを作成する必要はありません。
静的メソッド toNumeral を使用します。 このメソッドは 1 から 5 999 999 までの数を扱うことができます。 それより大きな値を指定してもエラーにはなりませんが、 歴史的に正しい結果とは異なる値に変換されます。
2 番目のパラメータである $uppercase は、 結果を大文字で出力する (デフォルト) かどうかを設定します。 オーバースコアを HTML のコードで出力する必要がある場合は、 3 番目のパラメータを設定します。これは、 3999 より大きな数を扱う際に必要となります。 このパラメータを false にすると、文字の前にアンダースコア _ が付加されます。
例 55-1アラビア数字からローマ数字への変換
|
静的メソッド toNumber を使用すると、 XLII のようなローマ数字を 42 のようなアラビア数字に変換することができます。 1000 より大きい数字を扱う際には、文字の前にアンダースコアを付加します。
表 55-1ローマ数字からアラビア数字への変換テーブル
ローマ数字 | アラビア数字 |
---|---|
I | 1 |
V | 5 |
X | 10 |
L | 50 |
C | 100 |
D | 500 |
M | 1000 |
S, _V | 5000 |
R, _X | 10 000 |
P, _L | 50 000 |
Q, _C | 100 000 |
O, _D | 500 000 |
N, _M | 1 000 000 |
例 55-2ローマ数字からアラビア数字への変換
|