簡體   English   中英

我可以在php中的開關內使用if語句嗎?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM