堆叠PHP 5.3三元操作符-它安全吗?



我知道链接expr ? var1 : var2代码的几个注意事项。

我试着堆叠PHP 5.3 ?:操作符,虽然,它似乎在多个回退场景中工作得很好:

php > $a=$b=0;
php > $c=5;
php > echo $a ?: $b ?: $c;
5
php > $b=2;
php > echo $a ?: $b ?: $c;
2
php > $a=1;
php > echo $a ?: $b ?: $c;
1

在上面的示例中,我设置了一个回退值链,返回值(如预期的那样)是最左边的非零值。

有没有一种情况,我没有深思熟虑,可能导致意想不到的结果?

是和不是:)

读读这篇关于三元操作的文章:http://www.mcgarvie.net/2013/02/27/programming/php-shorthand-if-notation-or-the-ternary-operator/

它有一些很好的例子,如何使用和如何不使用它们!

最新更新