Возможный дубликат:
Что здесь означает этот оператор?
Бит не работает в PHP (или, возможно, на любом другом языке)
Может ли кто-нибудь объяснить мне оператор ~
в PHP? Я знаю это NOT-operator, но почему PHP преобразовывает следующую инструкцию в отрицательное значение переменной минус один?
$a = 1; echo ~$a // echo -2
$a = 2; echo ~$a // echo -3
$a = 3; echo ~$a // echo -4