public static computeCheckDigit ( $partialNumber ) : string | ||
$partialNumber | ||
return | string |
public static function computeCheckDigit($partialNumber)
{
$checkDigit = self::checksum($partialNumber . '0');
if ($checkDigit === 0) {
return 0;
}
return (string) (10 - $checkDigit);
}
/** * Generate a Luhn compliant number. * * @param string $prefix * @return string */ public static function generateLuhnNumber($partialValue) { if (!preg_match('/^\\d+$/', $partialValue)) { throw new InvalidArgumentException('Argument should be an integer.'); } return $partialValue . Luhn::computeCheckDigit($partialValue); }