-2

我有三个身份证号码 $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;
}

但它不起作用,我请坚持任何想法。我需要帮助一整天

提前致谢

4

1 回答 1

2

尝试改变

foreach ($idmain as $value) {
  if (ctype............

进入

for ($i = 0; $i < 3; $i++) {
  $value = $("id" . $i);
  if (ctype............

所以你可以循环遍历$id1、$id2 和$id3。因为现在我真的不知道 $idmain 应该是什么意思。

于 2013-05-08T23:53:42.343 回答