I\'ve perused the questions on ternary operators vs. if/else structures, and while I understand that under normal circumstances there is no performance los
There is always short-circuiting, although as @BoltClock said, an if statement is probably more readable in my opinion, and opens the door to else if and else conditions as well.
strlen($foo) > 3 && $foo = substr($foo, 0, 3);
The latter statement will only be executed if the former evaluates to TRUE.