The triple form is basically a shortcut for if-> then-> else
I generally avoid this because it is not all readable.
$ip = ($_SERVER['HTTP_X_FORWARD_FOR']) ? $_SERVER['HTTP_X_FORWARD_FOR'] : $_SERVER['REMOTE_ADDR'];
logically equivalent to:
if($_SERVER['HTTP_X_FORWARD_FOR']){ $ip = $_SERVER['HTTP_X_FORWARD_FOR']; }else{ $ip = $_SERVER['REMOTE_ADDR']; }
It should be said that it is EXACTLY that it is most often used for: initializing variables. Very often with form data.
source share