进击的码农

php之switch迷惑行为

$value = '';
switch($value)
{
    case null: 
        echo 11111;
        break;
    case '': 
        echo 22222;
        break;
}

上面这段代码输出什么?
很多人认为输出22222
但是事实是11111
php里面的switch是非全等比较,所以当程序运行到第一个case时,''==null,之后break不往下执行,所以输出11111

回复

This is just a placeholder img.