其中 os_type为3 os_rs[‘app_key’] 为134217728也就是 16进制的 8000000
echo “#########”.”
“;
echo $os_type.” “.$os_rs[‘app_key’].”
“;
echo ($os_type)&($os_rs[‘app_key’]); ==》结果是1
echo “
“;
echo (3)&($os_rs[‘app_key’]); ===》 结果为0 是正常的
echo “
“;
echo (268435455)&($os_rs[‘app_key’]); ===》 结果为 134217728 也正常
echo “
“;
echo $os_type&134217728; ===》 结果为0 是正常的
echo “
“;
echo “
@本文来源gaodaimacom搞#代%码@网-搞代gaodaima码 echo “<input type=\"checkbox\" name=\"os_type[]\" value=\"".dechex($app_key)."\" ";
if($flag != 0)
echo “checked=\”checked\” “;
echo “>”;
echo “$app_str”;
echo “”;
echo “
“;
奇怪的是为什么2个变量&操作的结果为1,是不是涉及了符号的问题
回复讨论(解决方案)
$os_type = 3;$os_rs['app_key'] = 134217728;var_dump( $os_type & $os_rs['app_key'] );
int(0)
$os_type = 3;$os_rs['app_key'] = 134217728;var_dump( $os_type & $os_rs['app_key'] );
int(0)
情况比想象的要负责一点,在{}内赋值和{}外赋值结果还不一样
我???行是0的。
echo ($os_type)&($os_rs[‘app_key’]); //0
还有什么复杂情况,你说出来看看