Don't forget that ?: can get dangerous, not unlike juggling running chainsaws. It's a great show, but is liable to injure yourself something fierce:
$foo = $a? $b? $c : $d? $e : $f : $g : $h;
Sometimes an if is more verbose, but undeniably precise.
Instead of getting carried away with ?:, you can sometimes
compact it using the regular logical operators || and &&. It really depends on
what you're working with.