php的小魔法
在三元运算符的应用中。有以下几种:
$b = $b ? $c: 'sfs';
$b = $b ? : 'sfs';
$b = $b ?? 'd';
第一种比较好理解了,除了python和Go,几乎所有语言都有这种用法吧?!
重点是下面这两种用法,一定要注意区别啊。
我先举个例子就知道了:
$b = '' ? 0:1;
print 'first:'.$b; //输出:first:1
$b = '' ?? 1;
print 'second:'.$b; //输出:second:
单个问号,是判断该值是否为该类型的空值。即如果是整数,那么前面是0,这里也会输出1.
双问号是判断该值是否存在,类似isset.
现在我们这样做:
$b = null ?? 1;
print 'second:'.$b;
输出:second:1
--------EOF---------
微信分享/微信扫码阅读
微信分享/微信扫码阅读