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;
Leave a Reply