Skip to content
/ damm Public

Damm algorithm functions, a check digit algorithm that detects single-digit errors and adjacent transposition errors

License

Notifications You must be signed in to change notification settings

choval/damm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Choval/damm

Damm algorithm functions.

In error detection, the Damm algorithm is a check digit algorithm that detects all single-digit errors and adjacent transposition errors. It was presented by H. Michael Damm in 2004.

-- Wikipedia

Install

composer require choval/damm

Usage

damm_digit(string $number) : int
damm_valid(string $number[, string $digit]) : bool

Both functions take a string as parameter to allow numbers larger than PHP_INT_MAX.
They still have to be numeric.

Examples:

echo damm_digit(572);
// 4

echo damm_digit('572');
// 4

echo damm_digit('0000572');
// 4

echo damm_valid(572, 4);
// true

echo damm_valid(572, 3);
// false

echo damm_valid(5724);
// true

echo damm_valid('000005724');
// true

License

MIT, see LICENSE

About

Damm algorithm functions, a check digit algorithm that detects single-digit errors and adjacent transposition errors

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published