echo 1 ? 'A' : 1 ? 'B' : 'C';
の結果が B になるのが納得できません。

JavaScriptだと、A になります。
javascript:alert(1 ? 'A' : 1 ? 'B' : 'C')

PHPの ?: とJSの ?: は別物なのでしょうか?