我无法理解为什么我从PHP的下面的语句中得到输出"1",
<?php echo !!!0;?>
Run Code Online (Sandbox Code Playgroud)
请让我知道原因
kni*_*ttl 11
该语句被解析为!(!(!0)).!是逻辑否定运算符.当将它应用于除布尔值之外的任何其他类型(true/false)时,操作数首先被强制转换为布尔值(0,空字符串,空数组,空,空SimpleXML对象= false;其他一切都为真).
让我们打破声明:
!!!0 ==
!!!false ==
!!true ==
!false ==
true
Run Code Online (Sandbox Code Playgroud)
最后,echo true将输出1.