31
- En que lenguaje?
- Que función es la que te interesa realmente? (introducir un DUI y que diga que es válido?)
- Necesitas una salida especifica?
Yo "tengo" (en alguno de los tantos repos) unas que usé cuando estuve en el GOES (hasta 2020) pero desconozco si desde ese año han cambiado. Lo que si se es que acá hay varios que están trabajando en Hacienda y ellos si tienen esos snippets
Responde lo que te pregunte y te las busco; o las hago
Acá te dejé mi snippet
SiKa acá te dejo mi snippetCódigo: (php) [Seleccionar]<?php
function isDUI($dui) {
if ((bool)preg_match("/(^\d{8})-(\d$)/", $dui) === true) {
[$digits, $verificator] = explode("-", $dui);
$sum = 0;
for ($i = 0, $l = strlen($digits); $i < $l; $i++) {
$sum += (9 - $i) * (int)$digits[$i];
}
return (bool)((int)$verificator === (int) (10 - ($sum % 10)) % 10);
}
return false;
}
echo "<br>".var_dump(isDUI("12345678-1")); // false
echo "<br>".var_dump(isDUI("123456789-1")); // false
echo "<br>".var_dump(isDUI("12345678-12")); // false
Probado con muchos DUIs y aun funciona perfecto