$result = $A ? 1 : $B ? 2 : 3;

Это не

$result = $A ? 1 : ($B ? 2 : 3);

Это

$result = ($A ? 1 : $B) ? 2 : 3;

Отличненько.
Т.е. вот если ($A ? 1 : $B) == TRUE, то тогда ...
Понять это сразу сложно, потому что уебан придумывал с альтернативным мышлением.