Originariamente inviato da blekm
quindi, anche se fossero vuoti, sono sempre degli array...quindi è una funzione che a me non serve... giusto?
nel tuo caso serve empty. Prima di una certa versione del php se l'indice fosse stato assente avresti ricevuto un NOTICE, bisognava usare, e si puo' ancora usare ovviamente:

if(isset($_POST['var']) AND $_POST['var'] != '')

ora pero', giustamente, empty valuta se il contenuto c'e' oppure no, devi solo considerare che per empty il valore 0 nella variabile viene considerato come vuoto o NULL.

ti riporto dal manuale (empty):
Valori restituiti
Restituisce FALSE se var non è vuota ed ha un valore diverso da zero.

I seguenti valori sono considerati vuoti:

"" (stringa vuota)
0 (0 come intero)
"0" (0 come stringa)
NULL
FALSE
array() (matrice vuota)
var $var; (una variabile dichiarata, ma senza valore in una classe)
per contro isset() da la variabile come settata anche nel caso fosse vuota oppure 0 ecc... cioe' valuta la presenza dell'indice dell'array ed e' per questo che bisogna aggiungere la valutazione del contenuto come vedi nella if postata prima come esempio

vedi tu quello che e' piu' opportuno per te e cosa ti serve