是否有开启fn(case_value)结果的快捷方式?

时间:2014-05-28 11:34:54

标签: php switch-statement

switch (true) {
    case array_key_exists('view', $load):
        # code...
        break;
    case array_key_exists('model', $load):
        # code...
        break;
    default:
        # code...
        break;
}

此代码工作正常。但这很费劲。什么是捷径?像这样

switch ($a = array_key_exists($a, $load)) {
    case 'view':
        # code...
        break;
    case 'model':
        # code...
        break;
    default:
        # code...
        break;
}

但这不起作用

2 个答案:

答案 0 :(得分:1)

在PHP中没有这种操作的快捷方式。

但是,原始代码可能应写为

if (array_key_exists('view', $load)) {
    // ..
} else if (array_key_exists('model', $load)) {
    // ..
} else {
    // ..
}

答案 1 :(得分:0)

#check if exists
if(array_key_exists($a, $load))  

#check what exists
switch ($a) {
    case 'view':
        # code...
        break;
    case 'model':
        # code...
        break;
    default:
        # code...
        break;
}

#case for nothing matched
else{
  # code...
}