Hola a todos,
Quisiera que por favor me ayudaran a entender qué hace realmente la siguiente función en PHP, ya que me salió e un examen y no supe qué responder:
Código PHP:
public static function is_valid($str)
{
if (!ctype_digit($str)) return FALSE;
$len = strlen($str);
if ($len != 15) return FALSE;
$odd = !strlen($str)%2;
$sum = 0;
for ($i=0; $i<$len; ++$i) {
$n = 0 + $str[$i];
$odd = !odd;
if ($odd) {
$sum += $n;
} else {
$x=2*$n;
$sum += $x>9?$x-9:$x;
}
}
return (($sum%10)==0);
}
Muchas gracias por su tiempo.