Что это за синтаксис PHP с кареткой и что он делает? - PullRequest
6 голосов
/ 11 августа 2011

Я столкнулся с этим синтаксисом в кодовой базе и не могу найти больше информации о нем.Это похоже на оператор каретки (оператор XOR), но поскольку приведенное ниже выражение было выполнено при выполнении определенного условия, я не думаю, что это так.Я также не могу найти его должным образом

Ответы [ 2 ]

12 голосов
/ 11 августа 2011

Это битовое XOR равно .Это в основном переключает флаг, потому что я получаю $flag - степень 2.Для примера:

$a = 5; // binary 0101
$b = 4; // binary 0100
$a ^= $b; // now 1, binary 0001

Итак, третий бит перевернут.Опять же:

$a ^= $b; // now 5, binary 0101
2 голосов
/ 11 августа 2011

Побитовый XOR и оператор присваивания http://php.net/manual/en/language.operators.bitwise.php

...