Como calcular nosso numero com digito verificador do banco Sicoob em PHP

Como calcular nosso numero com digito verificador do banco Sicoob em PHP

Quem sabe algum dia poderemos ter um padrão entro os bancos heim? Enquanto isso temos que fazer esse tipo de implementação arcaica.

<?php

$agencia = str_pad("3010", 4, '0', STR_PAD_LEFT);
$convenio = str_pad("1312345", 10, '0', STR_PAD_LEFT);
$nossoNumero = str_pad("0001", 7, '0', STR_PAD_LEFT);

$numeroCalculoDigito = $agencia . $convenio . $nossoNumero;
$peso = "319731973197319731973";

$valorSoma = 0;

for ($num = 0; $num < strlen($numeroCalculoDigito); $num++) {

    if ($numeroCalculoDigito[$num] > 0) {
        $valorSoma += $numeroCalculoDigito[$num] * $peso[$num];
    }
}

$dv = $valorSoma % 11;

//Importante se o DV for 0 ou 1, o DV será 0
if ($dv == 0 || $dv == 1) {
    $dv = 0;
} else {
    $dv = 11 - $dv;
}

echo $nossoNumero . $dv;

 

Be the first to comment

Leave a Reply

Seu e-mail não será publicado.


*