如何在Switch方法中添加多个条件案例?

Sta*_*arx 2 php

有没有办法在php中的switch方法中包含多个case?

mr.*_*. w 9

switch语句通过case依次评估每个表达式并将结果与switch表达式进行比较来工作.如果两个表达式是等价的,则执行case块(在break/ continueconstructs 建立的约束内).您可以使用此事实将任意布尔表达式包含为case表达式.例如:

<?php

$i = 3;
$k = 'hello world';

switch (true) {
    case 3 == $i and $k == 'hi there';
        echo "first case is true\n";
    break;

    case 3 == $i and $k == 'hello world';
        echo "second case is true\n";
    break;
} //switch

?>
Run Code Online (Sandbox Code Playgroud)

这输出:

second case is true
Run Code Online (Sandbox Code Playgroud)

我不经常使用这种结构(而是更喜欢避免这种复杂的逻辑),但有时会出现一个复杂的if-then语句可能会被使用,并且可以使这些片段更容易阅读.