在多个案例中运行切换案例功能?

时间:2013-08-20 06:52:45

标签: php function for-loop switch-statement

switch(n){
case "badge01":
case "badge02":
case "badge03":
case "badge04":
case "badge05":
//dosomething
     break;
}

在上面的switch case语句中,我想使用一个函数来运行多循环来生成case的名称,所以我是否可以知道如何在这样的switch case语句中生成函数?

switch(n){
case badgenameloop():
//dosomething
     break;
}

是否可以这样做?

谢谢,抱歉我的英语不好。

2 个答案:

答案 0 :(得分:0)

根据PHP Manual

  
    

case表达式可以是任何求值为简单类型的表达式,即整数或浮点数和字符串。这里不能使用数组或对象,除非它们被解除引用到简单类型。

  

我担心你没有case声明的循环,因此浪费时间尝试。

答案 1 :(得分:0)

您可以这样做:

function badgenameloop($key)
{
    switch($key){
        case "badge01":
        case "badge02":
        case "badge03":
        case "badge04":
        case "badge05":
            echo "badge 1";
            break;
    }
}

function badgename2loop($key)
{
    switch($key){
        case "badge_2_01":
        case "badge_2_02":
        case "badge_2_03":
        case "badge_2_04":
        case "badge_2_05":
            echo "badge 2";
            break;
    }
}

$key = "badge_2_01";
switch($key){
    case badgenameloop($key): break;
    case badgename2loop($key): break;
}