Heim > Fragen und Antworten > Hauptteil
PHP
var_dump(0 == null)
//ture
Javascript
console.log(0 == null)
//false
Warum ist 0==null in PHP kein numerischer Wert?
迷茫2017-06-17 09:17:17
原因是在PHP中变量是以C语言的结构体来存储的,空字符串和NULL,false都是以值为0存储的.
null,0,false在不区分类型的情况下都判为逻辑假 即false
过去多啦不再A梦2017-06-17 09:17:17
参见PHP手册,下图截取自PHP手册
此表展示了PHP二元运算符对于运算符左右运算子进行的处理。
可见,0 == null
,一个运算子为数字,另一个运算子为null
,符合表中的第二种情况,所以按照描述,两边同时被转成相应的布尔值,也就是说0
和null
都被转成了false
,这样 false == false
就是true
。