Hi Tom.
Fehlt da nicht was?
PHP 5.3 fuehrt die Syntax "A ?: B" als Aequivalent zu "A ? A : B" ein.
Außerdem sträube ich mich immer, die automatische Typumwandlung auf diese Weise zu missbauchen.
Ist mir jetzt nicht ganz klar, wo Du einen Missbrauch siehst. Aus der Doku zu usort:
"Die Vergleichsfunktion muss einen Integerwert kleiner als, gleich oder größer als 0 zurückgeben je nachdem ob das erste übergebene Argument kleiner als, gleich oder größer als das zweite ist."
Genau das geschieht doch hier. Oder?
Viele Gruesse,
der Bademeister