PHP 8.2.30
Preview: check_digit.php Size: 962 B
/home/byroehnu/easetack.com/vendor/fakerphp/faker/src/Faker/Provider/pt_BR/check_digit.php

<?php

namespace Faker\Provider\pt_BR;

/**
 * Calculates one MOD 11 check digit based on customary Brazilian algorithms.
 *
 * @see http://en.wikipedia.org/wiki/Check_digit
 * @see http://pt.wikipedia.org/wiki/CNPJ#Algoritmo_de_Valida.C3.A7.C3.A3o
 * @see http://en.wikipedia.org/wiki/Cadastro_de_Pessoas_F%C3%ADsicas#Validation
 *
 * @param int|string $numbers Numbers on which generate the check digit
 *
 * @return int
 */
function check_digit($numbers)
{
    $numbers = (string) $numbers;
    $length = strlen($numbers);
    $second_algorithm = $length >= 12;
    $verifier = 0;

    for ($i = 1; $i <= $length; ++$i) {
        if (!$second_algorithm) {
            $multiplier = $i + 1;
        } else {
            $multiplier = ($i >= 9) ? $i - 7 : $i + 1;
        }
        $verifier += $numbers[$length - $i] * $multiplier;
    }

    $verifier = 11 - ($verifier % 11);

    if ($verifier >= 10) {
        $verifier = 0;
    }

    return $verifier;
}

Directory Contents

Dirs: 0 × Files: 8

Name Size Perms Modified Actions
6.20 KB lrw-rw-rw- 2024-11-21 13:46:39
Edit Download
962 B lrw-rw-rw- 2024-11-21 13:46:39
Edit Download
954 B lrw-rw-rw- 2024-11-21 13:46:39
Edit Download
322 B lrw-rw-rw- 2024-11-21 13:46:39
Edit Download
4.36 KB lrw-rw-rw- 2024-11-21 13:46:39
Edit Download
10.27 KB lrw-rw-rw- 2024-11-21 13:46:39
Edit Download
4.64 KB lrw-rw-rw- 2024-11-21 13:46:39
Edit Download
154.54 KB lrw-rw-rw- 2024-11-21 13:46:39
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).