Basterebbe aggiungere gli elemente all'array solo se if($foto[$i]['nomefoto'] != '')
Che senso ha creare l'array con tutti gli elementi e poi ripulirlo fai il controllo prima ed aggiungi gli elementi all'array solo se questi non sono nulli.