php xor运算符未按预期工作

时间:2013-02-18 14:04:02

标签: php xor

我有以下代码。如果我单独运行每个条件它工作正常但很快我添加'xor'或'或'或'||'运营商似乎都不匹配。

我知道它会变成一个简单的错过但却无法发现它。我使用这个操作符错了吗?

if ($usercurrentpassword['password'] != $currentpasswordmd5 xor $usercurrentpassword['password'] != $currentpasswordsha1){
                    $a = "Current passwords do not match";
                    return $a;
                }

2 个答案:

答案 0 :(得分:0)

也许你应该使用括号:

if (($usercurrentpassword['password'] != $currentpasswordmd5) xor ($usercurrentpassword['password'] != $currentpasswordsha1)) {

答案 1 :(得分:0)

就我而言,PHP(许多其他语言)中的XOR(独占分离)运算符是插入符号 ^ 。试试吧。