ふつーに
$per_page = ($per_page < 10)? 10
: ($per_page > 50)? 50
: $per_page
;
とか書いてたら、$per_pageが0の時に50が返ってきて死ぬかと思った。
ふつーの言語の三項演算子って上記で正しく動くと思うんだけど、PHPみたいなのって他にあるんでしょーかね。
追記
ちなみにPHPでは
$per_page = $per_page < 10 ? 10
:( $per_page > 50 ? 50
:( $per_page
));
――と書くようにしています :p