if ($var) は、$var の値に false ではないものが含まれている場合にのみ true を実行します。false/true の値を知りたい場合は、php.net から以下を参照してください。
var_dump((bool) ""); // bool(false)
var_dump((bool) 1); // bool(true)
var_dump((bool) -2); // bool(true)
var_dump((bool) "foo"); // bool(true)
var_dump((bool) 2.3e5); // bool(true)
var_dump((bool) array(12)); // bool(true)
var_dump((bool) array()); // bool(false)
var_dump((bool) "false"); // bool(true)
そして、($var)に (私が知る限り) 1 つの定義がある場合、 $varにfalse 以外の値がある場合にtrueと評価されます
特定のタイプをキャストしてチェックすることをお勧めします。
また、明示的なチェックが「瀕死の芸術」であることに同意しません。次の点に注意してください。
$var = 1;
if($var) // returns true since $var is 1
でも、
if ($var === true) // returns false since $var is not true its 1
結論: $var がブール値を保持する必要があることを具体的に確認したい場合は、システムにバグが発生するため、if ($var)を使用しません。