byrokrat / checkdigit

Helper classes to calculate and validate ckecksums.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ABANDONED! This package is discontinued and will not be updated.

Checkdigit

Packagist Version Build Status Quality Score Scrutinizer Coverage

Helper classes to calculate and validate ckecksums.

Installation

composer require byrokrat/checkdigit

Checkdigit requires the bcmath php extension.

API

The Calculator interface defines two methods:

  • isValid(string $number): bool checks if number contains a valid check digit.
  • calculateCheckDigit(string $number): string calculates the check digit for number.

Implementations include:

  • Modulo10 and Luhn for modulo 10 check digits (Luhn is simply a shorthand for Modulo10).
  • Modulo10Gtin for modulo 10 check digits variant used in GTIN barcodes.
  • Modulo11 for modulo 11 check digits.
  • Modulo97 for modulo 97 check digits.

Usage

$luhn = new byrokrat\checkdigit\Luhn;

// outputs '1' (true)
echo $luhn->isValid('55555551');

// outputs '' (false)
echo $luhn->isValid('55555550');

// outputs '1'
echo $luhn->calculateCheckDigit('5555555');

About

Helper classes to calculate and validate ckecksums.

License:The Unlicense


Languages

Language:PHP 100.0%