variables predefinidas PHP

Ejercicio Básico 19 PHP: Verificación del DNI

En el ejercicio de hoy vamos a crear un pequeño programa que contenga una función que reciba un DNI (ocho números, sin espacios, puntos ni ningún otro carácter) a través de un formulario y devuelva un código que indique el problema:

  • 0: el DNI es correcto.
  • -1: número incorrecto de caracteres.
  • -2: Los ocho primeros caracteres no son números.
  • -3: no coincide el número con la letra.

Comprobar que el dato introducido corresponde al formato de un NIF. En este punto creo que sería bueno aclarar que durante el ejercicio tomaré el NIF como el documento que incluye los números y la letra y como DNI tomaré tan solo los números de dicho NIF. El NIF constará de 8 números y una letra.
Para calcular la letra correspondiente al DNI habrá que tomar el resto de dividir el número dado como dni por 23 (para esto se usa el operador %). Este resto será la posición que ocupa la letra buscada en la cadena TRWAGMYFPDXBNJZSQVHLCKE.
Para comparar la letra calculada con la obtenida por la función que crearemos, hay que tener en cuenta que el usuario podría escribir la letra del NIF en minúscula.
Para comprobar si una cadena de texto representa un valor numérico, debe usarse la función is_numeric() y para convertir a número entero una variable de tipo string, se usa la función intval().

El código que mostraré a continuación puedes verlo funcionando en el siguiente enlace.

 



Deja un comentario