PHP的非严格比较运算符(如==
)有一些臭名昭着的边缘情况看起来非常奇怪,直到你意识到PHP经常会将字符串变量强制转换为不同的类型以执行“正确”的操作。这导致了像这样的奇怪行为
//In PHP 5, this returns true
//In PHP 7, this return false
if("1e1"=="0xa")
{
var_dump("Equal");
}
else
{
var_dump("Not Equal");
}
是否收集了所有这些“奇怪”边缘案例的清单?理想情况下已经收集到自动化测试套件中了吗?