请编写一个PHP程序,设一身份证号码,输出该身份证所有者的性别。
时间: 2024-10-09 11:02:59 浏览: 19
在PHP中,你可以使用正则表达式来解析中国大陆的身份证号码,并通过最后一位数字判断性别。以下是一个简单的示例程序:
```php
<?php
function getGender($idNumber) {
// 正则表达式匹配中国身份证号码
if (!preg_match("/^(\d{6})(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|3[01])\d{3}[\dXx]$/", $idNumber)) {
return "输入的不是有效的身份证号码";
}
// 根据最后一位数字计算性别
$gender = '';
switch (true) {
case ($idNumber[strlen($idNumber) - 1] == '1' || $idNumber[strlen($idNumber) - 1] == '7'):
$gender = '男';
break;
case ($idNumber[strlen($idNumber) - 1] == '0' || $idNumber[strlen($idNumber) - 1] == '5'):
$gender = '女';
break;
default:
return "无法确定性别";
}
return $gender;
}
// 示例身份证号码
$idNumber = '123456789012345678';
echo "身份证所有者的性别是:" . getGender($idNumber);
?>
```
在这个例子中,我们首先检查输入的是否符合身份证号码的格式,然后根据最后一位数字(奇数代表男性,偶数代表女性)返回性别。
阅读全文