条件

If 语句

if statements evaluate an expression, executing the following block if the evaluation is true. 括号是必需的。 一个如果可以有一个可选的else子句, 而且多个if/else构造可以放在一起

if false {
    echo "false?";
} else {
    if true {
        echo "true!";
    } else {
        echo "neither true nor false";
    }
}

elseif也有条件

if a > 100 {
    echo "to big";
} elseif a < 0 {
    echo "to small";
} elseif a == 50 {
    echo "perfect!";
} else {
    echo "ok";
}

计算表达式中的括号是可选的:

if a < 0 { return -1; } else { if a > 0 { return 1; } }

Switch 语句

一个switch根据一系列预定义的文字值计算表达式,执行相应的case块或回落到default块:

switch count(items) {

    case 1:
    case 3:
        echo "odd items";
        break;

    case 2:
    case 4:
        echo "even items";
        break;

    default:
        echo "unknown items";
}