PHP中的独占或运算符是^.
如果你想使用xor(在任何语言中,真的,不仅仅是PHP),但你担心搜索它会发现类似的东西exorcize,你可以只搜索" xor "(两边都有空格).
或者,任何防止周围文本成为xor单词一部分的正则表达式,例如(仅限示例):
[^a-zA-Z0-9_]xor[^a-zA-Z0-9_]
Run Code Online (Sandbox Code Playgroud)
你可以使用,!=如果他们都已经布尔了.
if (true != false) // xor
...
Run Code Online (Sandbox Code Playgroud)
当然,这与在搜索结果中出现误报有同样的问题,因此您可能采用个人约定(可能会使您的同事感到困惑)使用其他PHP不等运算符:
if (true <> false) // xor
...
Run Code Online (Sandbox Code Playgroud)
如果他们不是布尔人,你需要施展他们.
if (!$a <> !$b) // xor
...
Run Code Online (Sandbox Code Playgroud)
==!运算符!$a ==! $b相当于$a xor $b.
if ('hello' ==! 0) // equivalent to ('hello' xor 0)
...
Run Code Online (Sandbox Code Playgroud)
这实际上是'hello' == !0> 'hello' == true> true == true> true,这就是为什么它可以作为xor.这是有效的,因为当PHP将一个布尔值与其他任何布尔值进行比较时,它也会将第二个参数转换为布尔值.