$vel) { switch ($vel[1]) { //必有且不为空 case 1: foreach ($vel[0] as $k => $v) { if (!isset($array[$v]) || empty($array[$v])){ return false; } } break; //必有切不为空,0 且必须为数字 case 2: foreach ($vel[0] as $k => $v) { if (!isset($array[$v]) || empty($array[$v]) || !is_numeric($array[$v])){ return false; } } break; //不必有 有则比为数字 case 3: foreach ($vel[0] as $k => $v) { if (isset($array[$v]) && !is_numeric($array[$v])){ return false; } } break; //必有切不为空,0 且必须为整数 case 4: foreach ($vel[0] as $k => $v) { if (!isset($array[$v]) || empty($array[$v]) || !is_int($array[$v]+0)){ return false; } } break; //存在且数量>0 case 5: foreach ($vel[0] as $k => $v) { if (!isset($array[$v]) || count($array[$v]) == 0){ return false; } } break; //必须是有且是****-**-** case 6: foreach ($vel[0] as $k => $v) { if (!isset($array[$v]) || !preg_match("/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/",$array[$v])){ return false; } } break; //必须是有且是价格(最多二位小数) case 7: foreach ($vel[0] as $k => $v) { if (!isset($array[$v]) || !preg_match('/(^[1-9]\d*(\.\d{1,2})?$)|(^[0]{1}(\.\d{1,2})?$)/',$array[$v])){ return false; } } break; //必须是有且是手机 case 8: foreach ($vel[0] as $k => $v) { if (!isset($array[$v]) || !preg_match('/^(0|86|17951)?(13[0-9]|15[0-9]|17[0-9]|18[0-9]|14[0-9])[0-9]{8}$/',$array[$v])){ return false; } } break; //必须是有且是邮箱 case 9: foreach ($vel[0] as $k => $v) { if (!isset($array[$v]) || !preg_match('/w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*/',$array[$v])){ return false; } } break; //必须是有且是身份证号(中国大陆) case 10: foreach ($vel[0] as $k => $v) { if (!isset($array[$v]) || !preg_match('/^\d{15,15}$|^\d{17,17}([0-9]|[Xx])$/',$array[$v])){ return false; } } break; //必有且是标准时间格式09:02 case 11: foreach ($vel[0] as $k => $v) { if (!isset($array[$v]) || !preg_match('/^(0[0-9]|1[0-9]|2[0-3])\:(0[0-9]|[1-5][0-9])$/',$array[$v])){ return false; } } break; } } return true; } }