if,whileの条件文の省略した書き方に出会った

だいぶ前になりますが、こんな書き方のif文にはじめて出会いました。

if($hoge){
//処理
}

phpの制御構造の条件文の書き方でもっとも基本的なものは、こんな形ですよね。

$hoge == true
$hoge == "hoge"
$hoge == 12

などなど。
初心者の僕には、ただ()に変数が入っているだけの条件式の意味がよくわからなかったのですが……。
上のように書いた場合、$hogeがfalseでないか、trueであれば、以後の処理が行われることになるみたいです。つまり、$hoge == true,あるいは$hoge !== falseの省略だということです。変数に値が入っているかいないかの場合分けとして、この書き方をよく見ます。