<?php
$key = '1_1';
$p1 = 1;
//$p1 = (string)$p1;
//var_dump($p1);
if ($key == $p1) {
echo 'eq';
} else {
echo 'neq';
}
?>
如果不把$p1强制设置为字符类型,明明不相等,却判断为相等。
或者可把$p1 = 1;改成$p1 = '1';设置为字符类型。
本文探讨了PHP中变量类型比较的特殊情况,特别是在没有显式类型转换时整数与字符串的比较可能导致的逻辑错误。
<?php
$key = '1_1';
$p1 = 1;
//$p1 = (string)$p1;
//var_dump($p1);
if ($key == $p1) {
echo 'eq';
} else {
echo 'neq';
}
?>
如果不把$p1强制设置为字符类型,明明不相等,却判断为相等。
或者可把$p1 = 1;改成$p1 = '1';设置为字符类型。

被折叠的 条评论
为什么被折叠?