0005-PHP8 条件判断

PHP-教程   2023-04-18 15:41   505   0  

1、三元运算符 ? :

$xiaoming = '小明';
var_dump( $xiaoming ? '我是小明' : '我也不知道我是谁' );

2、if

$xiaoming = '小明';
if($xiaoming){
   echo $xiaoming;
}

3、if else

$xiaoming = '小明';
if($xiaoming){
   echo $xiaoming;
}else{
   echo '小红';
}

4、if elseif else

$xiaoming = '小明';
$xiaohong = '小红';

if($xiaoming){
   echo $xiaoming;
}else if($xiaohong){
   echo $xiaohong;
}else{
   echo '小王';
}

5、switch case default

$str = 'xiaogang';
switch ($str) {
   case 'xiaoming':
       echo '我是小明';
   case 'xiaohong':
       echo '我是小红';
   case 'xiaogang':
       echo '我是小刚';
   default:
       echo '我不知道我是谁';
}

6、break

  • 结束当前代码

$str = 'xiaogang';
switch ($str) {
   case 'xiaoming':
       echo '我是小明';
       break;
   case 'xiaohong':
       echo '我是小红';
       break;
   case 'xiaogang':
       echo '我是小刚';
       break;
   default:
       echo '我不知道我是谁';
       break;
}

7、PHP8 新特性 match

$str = 'xiaogang';
echo match ($str) {
   'xiaoming' => '我是小明',
   'xiaohong' => '我是小红',
   'xiaogang' => '我是小刚'
};

匹配多条件、默认值

$str = 'xiaoming';
echo match ($str) {
   'xiaohong','xiaohongshitai' => "我是小红",
   'xiaogang','ximendaguanren' => "我是小刚",
   default => '我是小明',
};

备:没有默认值,会报错的

8、switchmatch 对比

  • match 比较分支值,使用了严格比较 (===), 而 switch 语句使用了松散比较。

  • match 表达式会返回一个值。

  • match 的分支不会像 switch 语句一样, 落空时执行下个 case。

  • match 表达式必须彻底列举所有情况。


博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。