Le numéro de carte d'identité est un outil de preuve d'identité souvent utilisé dans notre vie quotidienne, et les informations d'anniversaire qu'il contient sont également très importantes. Lorsque nous utilisons PHP pour vérifier les numéros d'identification, nous devons souvent déterminer si les informations d'anniversaire sont correctes. Cet article explique comment utiliser les expressions régulières PHP pour vérifier les informations d'anniversaire du numéro d'identification.
1. Le format de base du numéro d'identification
Le numéro d'identification est une chaîne de 18 chiffres et lettres, dont le dernier chiffre peut être un chiffre ou une lettre. Est-ce en majuscule ou en minuscule. Les 17 premiers chiffres constituent la partie principale de la carte d'identité, qui contient la région de la carte d'identité, la date de naissance, le sexe et d'autres informations. Le format de base du numéro d'identification est le suivant :
Indicatif régional à 6 chiffres + date de naissance à 8 chiffres + code séquentiel à 3 chiffres + code de contrôle à 1 chiffre
# # Parmi eux, l'année de naissance. Le mois et le jour sont au format numérique pur, tel que 19880101, nous pouvons donc diviser la chaîne de 18 chiffres du numéro de carte d'identité en quatre parties suivantes grâce à des expressions régulières :# #$region_code // Code de région à 6 chiffres
$birthday // Année, mois et jour de naissance à 8 chiffres$sequence_code // Code de séquence à 3 chiffres
$verify_code / / Code de vérification à 1 chiffre
2, PHP Expression régulière pour vérifier les informations d'anniversaire
Lors de la vérification des informations d'anniversaire du numéro d'identification, nous devons utiliser des expressions régulières pour extraire le année, mois et jour de naissance, puis déterminez s'il est conforme au format spécifié.
Dans le numéro d'identification, la position de la date de naissance est du 7 au 14, on peut donc utiliser la fonction substr() pour extraire la chaîne à 8 chiffres, puis utiliser des expressions régulières Vérifiez la formule.
Ce qui suit est l'expression régulière permettant de vérifier l'année, le mois et le jour de naissance :
$birthday_pattern = '/^(19d{2}|20d{2}) (0[1- 9]|1[012])(0[1-9]|[12]d|3[01])$/';
où :
# #^ : Indique le début de la chaîne correspondante(19d{2}|20d{2}) : Indique la correspondance avec l'année 19XX ou 20XX
(0[1-9]|1[ 012]) : Indique la correspondance 01 -Décembre(0[1-9]|[12]d|3[01]) : Indique la correspondance 01-31 jours
$ : Indique la correspondance avec la fin du string
# # Faites correspondre la date de naissance à 8 chiffres du numéro de carte d'identité avec l'expression régulière ci-dessus. Si la correspondance réussit, cela signifie que les informations d'anniversaire sont légales.
Voici l'exemple de code PHP complet :
function validate_birthday($id_card)
{$birthday_pattern = '/^(19d{2}|20d{2})(0[1-9]|1[012])(0[1-9]|[12]d|3[01])$/'; $birthday_string = substr($id_card, 6, 8); if (preg_match($birthday_pattern, $birthday_string)) { return true; } else { return false; }
# #Lorsque vous utilisez cette fonction pour vérifier le numéro d'identification, il vous suffit de transmettre la chaîne du numéro d'identification :
echo '生日信息正确';
echo '生日信息错误';
}
Grâce à la méthode ci-dessus, nous pouvons vérifier rapidement et avec précision si les informations d'anniversaire du numéro d'identification sont légales, garantissant ainsi que le Efficacité du numéro d’identification.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!