ブール値を整数に変換する場合、true は 1 に変換され、false は 0 に変換されます。
PHP マニュアルから: http://php.net/manual/en/language.types.integer.php
ブール値から
FALSE は 0 (ゼロ) を生成し、TRUE は 1 (1) を生成します。
また:
-1 は、他のゼロ以外の (負または正の) 数値と同様に、TRUE と見なされます。
true < 0 => false => true < (bool)(0) => true < false => 1 < 0 = false
0 < true => true => (bool)(0) < true => false < true => 0 < 1 = true
true < 1 => false => true < (bool)(1) => true < true => 1 < 1 = false
1 < true => false => (bool)(1) < true => => true < true => 1 < 1 = false
true < -1 => false => true < (bool)(-1) => true < true => 1 < 1 = false
-1 < true => false => (bool)(-1) < true => true < true = > 1 < 1 = false
false < 0 => false => false < (bool)(0) => false < false => 0 < 0 = false
0 < false => false => (bool)(0) < false => false < false => 0 < 0 = false
false < 1 => true => false < (bool)(1) => false < true => 0 < 1 = true
1 < false => false => (bool)(1) < false => true < false => 1 < 0 = false
false < -1 => true => false < (bool)(-1) => false < true => 0 < 1 = true
-1 < false => false => (bool)(-1) < false => true < false => 1 < 0 = false