var_dump( (pack("C" , 1)<<1) ==pack("C" , 1) );왜 사실인가요
认证高级PHP讲师
PHP 비교의 경우 유형 변환1, pack("C", 1)<<1, 결과는 int(0)2, pack("C", 1), 결과는 문자열입니다. (" ")
실제로는 0 == ""의 비교로 단순화되었습니다
PHP는 비교 중에 유형이 동일하지 않으면 유형 변환을 수행합니다. PHP 在比较的时候,如果类型不相等,会进行类型转换 这里就会把 string("") 转换成 int 类型,也就是会变成 int(0),所以这里返回 true
PHP는 비교 중에 유형이 동일하지 않으면 유형 변환을 수행합니다.
PHP 在比较的时候,如果类型不相等,会进行类型转换
你要严格判断,可以使用 ===여기서 string("")은 int 유형으로 변환됩니다. 즉, int(0)이 되므로 여기서는 true를 반환합니다.
===
엄격하게 판단하셔야 하며 ===를 사용하시면 됩니다
PHP 비교의 경우 유형 변환
1, pack("C", 1)<<1, 결과는 int(0)
2, pack("C", 1), 결과는 문자열입니다. (" ")
실제로는 0 == ""의 비교로 단순화되었습니다
PHP는 비교 중에 유형이 동일하지 않으면 유형 변환을 수행합니다.
PHP 在比较的时候,如果类型不相等,会进行类型转换
这里就会把 string("") 转换成 int 类型,也就是会变成 int(0),所以这里返回 true
你要严格判断,可以使用
===
여기서 string("")은 int 유형으로 변환됩니다. 즉, int(0)이 되므로 여기서는 true를 반환합니다.엄격하게 판단하셔야 하며
🎜var_dump( (pack("C" , 1)<<1) ===pack("C" , 1) ) 결과는 false입니다🎜===
를 사용하시면 됩니다