这个问题类似于这里它的目的是为JavaScript,还催生了无数关闭分拆为各种不同的语言.我很好奇以下是否可以在PHP中评估为true:
($a == 1 && $a == 2 && $a == 3)
Run Code Online (Sandbox Code Playgroud)
为了进一步跟进,似乎简单的设置$a = true将产生所需的结果(这不是javascript的情况,因为类型转换在两种语言中的工作方式).一些答案(在javascript中)也可以使用===,所以在使用typechecking(===)的PHP中,以下内容是否会产生真实效果?
($a === 1 && $a === 2 && $a === 3)
Run Code Online (Sandbox Code Playgroud)
我刚试过这个:
$a = true;
echo ($a == 1 && $a == 2 && $a == 3);
Run Code Online (Sandbox Code Playgroud)
它回应了1.
由于类型转换而不是类型检查,1,2,3将被视为true与布尔值相比较.
回答编辑:不,不能做.
@FrankerZ评论的Hackish方法:
零字节字符= 0xFEFF
http://shapecatcher.com/unicode/info/65279
http://www.unicodemap.org/details/0xFEFF/index.html
$var = "1";
$var = "2";
$ var = "3";
echo ($var === "1" && $var === "2" && $ var === "3") ? "true" : "false";
Run Code Online (Sandbox Code Playgroud)
此代码这个字符,因为该名称运行$ var,并$var 似乎是有效的PHP编译器和此时,相应的字体,它可以被隐藏.它可以通过Windows 上的Alt+ 实现65279.
| 归档时间: |
|
| 查看次数: |
913 次 |
| 最近记录: |