(!$_SESSION['var']) takes on a boolean value (true/false)...
$SESSION['var'] (without the exclamation mark) takes on the value TRUE if $SESSION['var'] is set, and contains a value that evaluates to true, e.g. anything that doesn't evaluate to false.
$SESSION['var'] (without the exclamation mark) evaluates to FALSE if $SESSION['var'] is NOT set, OR if it is and contains a value that evaluates to false, e.g.: false, 0, 0.0, '', '0' or NULL.
The exclamation mark means logical negative, so !$x evaluates to TRUE if $x evaluates to FALSE and vice versa.
So, in conclusion...
!$SESSION['var'] (with exclamation mark) is TRUE if $SESSION['var'] is NOT set, OR if it is and contains a value that evaluates to false. Otherwise, !$_SESSION['var'] evaluates to FALSE.