我收到json $match = $data_json['match'];
所以,当我尝试在if
内部进行比较时:
if($match==0){
在这种情况下代码输入if即使它不是0.它只有在我使用类似的东西时才有效:
if($match=="0"){
使用“”。我已经尝试搜索解决方案(不需要使用“”),但我无法找到它。任何人都知道为什么会这样。看起来它比较字符串与整数。我知道这可能发生在C,但在PHP中也是如此?
谢谢!
答案 0 :(得分:0)
当您与PHP中的==
变量进行比较时,如果您还要使用===
检查变量的类型,则不会检查变量的类型。
答案 1 :(得分:0)
如果运算符==
在不同的类型之间进行转换,则===
运算符执行类型安全比较。这意味着如果两个操作数具有相同的true
和相同的type
,它将仅返回value
。这里有一些例子:
1 === 1 //true
1 == 1 //true
1 === "1" //false
1 == "1" //true