if($var) {}
можно писать, если есть уверенность, что переменная $var была выше объявлена. empty()
вроде как нестрого сравнивает с false: тыц. И не генерирует notice, если переменная ранее объявлена не была. Поэтому ее можно использовать вместо isset, если нужно, чтобы переменная существовала и содержала какое-нибудь значение, кроме null, false, 0 или ''. Если нужно просто проверить, объявлена переменная или нет (ну или нужно проверить наличие ключа в массиве), то используем isset()
.