Algorithm::CheckDigits::M11_0083pm
Compute check digits for vat registration number (dk)
Usage
use Algorithm::CheckDigits;$ustid = CheckDigits('ustid_dk');if ($ustid->is_valid('13585628')) {# do something}$cn = $ustid->complete('1358562');# $cn = '13585628'$cd = $ustid->checkdigit('13585628');# $cd = '8'$bn = $ustid->basenumber('13585628');# $bn = '1358562';
Overview
Algorithm
1.
|
Beginning left every digit is weighted with 2, 7, 6, 5, 4, 3, 2, 1 |
|---|---|
2.
|
The weighted digits are added. |
3.
|
The sum from step 2 is taken modulo 11. |
4.
|
The number is valid if the sum from step 3 is zero (0). |
Methods
- is_valid($number)
-
Returns true only if
$numberconsists solely of numbers and the sum computed according to the algorithm given above is 0.Returns false otherwise,
- complete($number)
-
Returns
$numberif$numberis valid according to the algorithm given above.Return '' otherwise.
- basenumber($number)
-
Returns
$numberif$numberis valid according to the algorithm given above.Return '' otherwise.
- checkdigit($number)
-
Returns '' if
$numberis valid.Return undef otherwise.
Export
None by default.
Releases
9 releases since Debian 5.0 (Lenny); the text changed 3 times.