我有三个身份证号码 $ id ='AA-2365' $ id ='A1-2365' $ id ='AA-2& 65'
id始终以两个字母开头,应存储为$ prefix 然后是一个分隔符,然后是一个整数,应该存储为$ suffix。分隔符可以是破折号,正斜杠或点。 我需要创建一个接受id字符串作为参数的php函数。 如果id有效,则该函数应返回包含前缀和后缀值的数组。如果它无效,则该函数应返回FALSE。 我需要创建一个包含上面三个ID的数组。现在创建一个foreach循环,将每个id传递给验证函数,并回显一条消息,说明id是否有效
我试过
function validator($id1,$id2,$id3){
$to_replace = array('.','/');
$clean = str_replace($to_replace, '-', $id1,$id2,$id3);
$split = explode('-', $clean);
$prefix = $split[0];
$suffix = $split[1];
foreach ($idmain as $value) {
if (ctype_alpha($prefix) && ctype_digit($suffix)) {
$valid ="id =$id is valid";
} else {
$valid = "id =$id is not valid";
}
return $valid;
}
但它不起作用而且我卡住了 任何想法,请。我需要一整天的帮助
提前致谢
答案 0 :(得分:2)
尝试更改
foreach ($idmain as $value) {
if (ctype............
到
for ($i = 0; $i < 3; $i++) {
$value = $("id" . $i);
if (ctype............
所以你可以遍历$ id1,$ id2和$ id3。 因为现在我真的不知道$ idmain应该是什么意思。