0455nobodyさん
2019/01/07(月) 14:34:51.01ID:K5PXrPkYルールとしては
・引数の数は3か4である
・$args[0]は1か2か3である
・$args[1]は1-100である
・$args[2]は$args[0]が1か3の場合1-100で$args[0]が2の場合1-10である
・$args[3]は$args[0]が3のもので英数字が入る ただし1文字目は数字はいけない
素直にコードにするとこうなります
function foo(...$args)
{
$len = count($args);
switch ($len) {
case 3:
if ( ($args[0] === 1) && ($args[1] > 0) && ($args[1] <= 100) && ($args[2] > 0) && ($args[1] <= 100) ) {
// pass
} elseif ( ($args[0] === 2) && ($args[1] > 0) && ($args[1] <= 100) && ($args[2] > 0) && ($args[1] <= 10) ) {
// pass
}
break;
case 4:
if ( ($args[0] === 3) && ($args[1] > 0) && ($args[1] <= 100) && ($args[2] > 0) && ($args[1] <= 100) && (ctype_alnum($args[2])) && (!ctype_digit($args[2][0]) ) {
// pass
}
break;
}
}
もうちょっときれいにかけたら書きたいです
これでは見直すたびに鬱になりそうです