php7中 ?? 和三元运算符 ? : 的区别
16-12-15 10:20
字数 316
阅读 16301
已编辑
php7新增一个运算符??
,不知道大家平时是在什么时候用它,但是我一直用它代替以前的三元运算符? :
,今天偶然发现,它和三元运算符是不一样的
$a = 0;
$b = $a > 0 ? $a : 1;
$c = $a ? $a : 2;
$d = $a ?: 3;
$f = $a ?? 3;
var_dump($b); // int 1
var_dump($c); // int 2
var_dump($d); // int 3
var_dump($f); // int 0
var_dump(isset($a)); // boolean true
> 从上面的结果可以看出 $a = $var ?? $temp
的意思是 $a = isset($var) ? $var : $temp
所以想用??
判断一个赋值为0
的变量的时候要小心了,结果可能和想象中的不一样
2人点赞>
请登录后发表评论
相关推荐
文章归档
2024-11
1 篇
2024-06
1 篇
2024-05
2 篇
2024-04
2 篇
2024-03
2 篇
展开剩余 68 条
2024-01
1 篇
2023-10
1 篇
2023-09
1 篇
2023-08
1 篇
2023-06
1 篇
2023-04
1 篇
2022-12
2 篇
2022-06
1 篇
2022-04
4 篇
2022-03
3 篇
2022-01
6 篇
2021-12
2 篇
2021-11
2 篇
2021-10
2 篇
2021-09
1 篇
2021-08
2 篇
2021-07
4 篇
2021-06
1 篇
2021-05
3 篇
2021-04
3 篇
2021-01
2 篇
2020-11
1 篇
2020-10
3 篇
2020-09
2 篇
2020-08
1 篇
2020-07
5 篇
2020-06
5 篇
2020-05
1 篇
2020-04
1 篇
2020-03
2 篇
2020-02
3 篇
2020-01
1 篇
2019-11
5 篇
2019-10
10 篇
2019-09
12 篇
2019-08
17 篇
2019-07
8 篇
2019-05
3 篇
2019-04
8 篇
2019-03
7 篇
2019-02
8 篇
2019-01
5 篇
2018-12
7 篇
2018-11
8 篇
2018-10
4 篇
2018-09
7 篇
2018-08
12 篇
2018-07
9 篇
2018-06
6 篇
2018-05
11 篇
2018-04
18 篇
2018-03
1 篇
2018-02
2 篇
2018-01
10 篇
2017-12
14 篇
2017-11
44 篇
2017-10
13 篇
2017-09
4 篇
2017-08
12 篇
2017-07
5 篇
2017-06
4 篇
2017-05
2 篇
2017-04
3 篇
2017-03
9 篇
2017-02
3 篇
2017-01
2 篇
2016-12
10 篇
2016-11
4 篇
最新文章
最受欢迎
11-07 19:00
06-26 11:51
05-17 17:08
05-17 10:59
04-11 17:05
13 评论
11 评论
10 评论
修正了本文不恰当的说明,多谢@veike 的提醒。
题主,你这个写的有点误人子弟啊。
php7中的三元运算 ?? 等同于 isset($var) ? $var : 返回值; 如果是满足isset条件,则返回$var .$var 可以是字符串、数组、布尔值等。 而且这个帖子还百度排名第一。我擦。
不是isset($condition) ? true : false;这种形式好吗。 而且怎么会有isset去判断bool值呢。