关于switch的一些理解

switch 语句类似于具有同一个表达式的一系列 if 语句。很多场合下需要把同一个变量(或表达式)与很多不同的值比较,并根据它等于哪个值来执行不同的代码。这正是 switch 语句的用途。

使用switch 可以使代码显得更简洁。

如下:

$a = '2';
switch ($a){
    case 2 === $a:
        echo '(int) 2<br />';
        break;
    case '2' === $a:
        echo '(string) 2<br />';
        break;
    default:
        echo 'no';
        break;
}
输出:(string) 2

使用switch 有几个需要注意的点:

1. 每一个case之后应追加break;否则会进行连续判断。举个例子:

$a = '2';
switch ($a){
    case 2 === $a:
        echo '(int) 2<br />';
        break;
    case '2' === $a:
        echo '(string-1) 2<br />';
//        break;
    case 2 == $a:
        echo '(string-2) 2<br />';
        break;
    default:
        echo 'no';
        break;
}
输出:

(string-1) 2
(string-2) 2

2. 使用强类型判断,例子还是如上。 因PHP是弱类型语言,他会自动根据变量的值,自动把变量转换为正确

的数据类型。

请注意,不要因为上面的原因,造成不必要的困扰。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值