在PHP中创建一个函数foreach循环
问题描述:
我有三个ID号 的$ id = 'AA-2365' 的$ id = 'A1-2365' 的$ id = 'AA-2 & 65'在PHP中创建一个函数foreach循环
该ID总是以两个字母开头,并且应该存储为$前缀 ,后跟一个分隔符,然后是一个应存储为$后缀的整数。分隔符允许为破折号,正斜杠或圆点。 我需要创建一个接受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;
}
,但它不工作和IM卡 任何想法,请。我需要帮助了它整天
在此先感谢
答
尝试改变
foreach ($idmain as $value) {
if (ctype............
到
for ($i = 0; $i < 3; $i++) {
$value = $("id" . $i);
if (ctype............
这样你就可以通过$ ID1,$ ID2和$ ID3循环。 因为现在我真的不知道$ idmain应该是什么意思。
+0
对不起,如果我不清楚。这是一个大学问题,必须以特定的方式回答,并且我坚持不懈。它必须遵循上面列出的步骤 – leelnj 2013-05-09 06:33:12
你能否具体解释上述代码不起作用?此外,你会更新你的问题,以显示你想要的输出。你打算如何构造结果数组? – 2013-05-08 22:20:49
所以基本上使用正则表达式应该做'/^[a-z] {2} [\ - \ /。] \ d {4} $/i'这个工作。 – HamZa 2013-05-08 22:21:15
您的第二个示例id'$ id ='A1-2365''以A1开头,而您声明前缀为2个字母。 – 2013-05-08 23:12:07