Öncelikle elinize sağlık, emek harcayıp, paylaşımda bulunduğunuz için.

Olaya sadece programatik açıdan yaklaşacağım. Kodun okunarlığı, pek iyi değil. Onca if kontrolü iç içe girmiş fakat her kontrolden sonra kontrole dair uyarı mesajı verilmesi oldukça hoş.

PHP'ye aşırı hakim olmadığımdan, kodun okunabilirliğini artırmak adına iki şey yapılabilir. Yazdığınız sınıfın unit testleri ve senaryo testleri başarılı ise kütüphane haline getirip, arayüz gibi kullanıcının yada geliştiricinin Sınıftan bir instance yaratıp, bir metod ile herşeyi halletmesi gibi yada o kadar if bloğunu parçalamak.

uyariMesaj1 = "xxx1 nedenden dolayı";
uyariMesaj2 = "xxx2 nedenden dolayı";
if(koşul1sağlamıyorsa){
uyariMesaj1
break; //bu php'de varmı bilmiyorum
}
if(koşul2sağlamıyorsa)
uyariMesaj2;
break;
}
...
..
.
//uplaodEt gibi bir metod ile finalize edilebilir
uploadEt(){

}

Olaya parça parça olumlu senaryolar üzerinden bakış açısı yerine, olumsuz taraftan bakmak bazen daha iyi olabilir.