[英]Can I use an if statement inside of a switch in php?
这是我想做的:
我有一个名为$ user的变量,其中的信息是从表单中发布的。 如果表单数据为空,我想做一件事,如果表单数据只是逗号或符号,我想做另一件事,如果表单数据是正确的,我想做第三件事。 这就是我的设置方式,这行得通吗? 如果没有,我该怎么做才能使其正常工作?
switch($user){
case 1:
if(empty($user)){
echo "<h2>"."<strong>"."You entered NOTHING, PLEASE Re-Enter"."</strong>"."</h2>";
}
case 2:
if($user == ",") {
echo "<h2>"."<strong>"."You did not enter any valid names/abbreviations to search, PLEASE Re-Enter"."</strong>"."</h2>";
}
default:
print "==========================================="."<br />";
tester($company, $user);
print "==========================================="."<br />";
print "========The following were NOT found====="."<br />";
notFound($company, $user);
print "==========================================="."<br />";
}
现在,它会自动变为默认值。 它可以运行,但是我想整合两个限定符,我将如何去做呢?
您需要在switch语句中的每个案例的末尾放置break
,否则它会进入下一个案例。 我也认为您可能对switch
工作方式感到困惑。 如果打开$ user,则case
与$ user的值匹配-因此,您甚至不需要if语句。
switch($user){
case "":
echo "<h2>"."<strong>"."You entered NOTHING, PLEASE Re-Enter"."</strong>"."</h2>";
break;
case ",":
echo "<h2>"."<strong>"."You did not enter any valid names/abbreviations to search, PLEASE Re-Enter"."</strong>"."</h2>";
break;
default:
print "==========================================="."<br />";
tester($company, $user);
print "==========================================="."<br />";
print "========The following were NOT found====="."<br />";
notFound($company, $user);
print "==========================================="."<br />";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.