在php持术或其他语言中我们经常会看到感叹号的用法,有一定程序语言基础的朋友都知道单个感叹号的作用是取反的意思,也就是取当前结果的反面,如:
<?php $a=true; var_dump(!$a); ?>
$a原来是true取反后$a就变成false了,这种用法在程序中经常见到,但是双感叹号的用法可能就少多了.其实双感叹号也就相当于程序语言中的三元运算($a?$b:$c),如
<?php $a=true; if(!!$a){ echo ‘ok‘; }else{ echo ‘error‘; } ?>
!!$a返回的是布尔值(true或false),有的朋友可能会问为什么要这么用,直接用常规的方法做不一样吗?其实是一样的,但是作为程序员必须宽泛的了解程序的各种写法,不致于别人写的程序自己看不懂.呵呵,个人看法!