Skip to content

Commit b17f827

Browse files
committed
Add mod10 "bvr checksum key"
1 parent 2db2519 commit b17f827

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

bvrkey.php

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<?PHP
2+
/* Chiffre clé BVR */
3+
global $bvr_table;
4+
$bvr_table = array(
5+
array(0, 9, 4, 6, 8, 2, 7, 1, 3, 5),
6+
array(9, 4, 6, 8, 2, 7, 1, 3, 5, 0),
7+
array(4, 6, 8, 2, 7, 1, 3, 5, 0, 9),
8+
array(6, 8, 2, 7, 1, 3, 5, 0, 9, 4),
9+
array(8, 2, 7, 1, 3, 5, 0, 9, 4, 6),
10+
array(2, 7, 1, 3, 5, 0, 9, 4, 6, 8),
11+
array(7, 1, 3, 5, 0, 9, 4, 6, 8, 2),
12+
array(1, 3, 5, 0, 9, 4, 6, 8, 2, 7),
13+
array(3, 5, 0, 9, 4, 6, 8, 2, 7, 1),
14+
array(5, 0, 9, 4, 6, 8, 2, 7, 1, 3));
15+
16+
function bvrkey($ref) {
17+
global $bvr_table;
18+
$r = 0;
19+
$ref = strrev($ref);
20+
for ($i = strlen($ref) - 1; $i >= 0; $i--) {
21+
$r = $bvr_table[$r][intval($ref[$i])];
22+
}
23+
return array(0, 9, 8, 7, 6, 5, 4, 3, 2, 1)[$r];
24+
}
25+
?>

0 commit comments

Comments
 (0)