Porównywanie zawartości wszystkich plików za każdym razem byłoby nieoptymalne.
Ale od czego są funkcje hashujące?
Przy wgrywaniu każdego obrazka generuj sobie md5 z takiego pliku i zapisuj np. jako: $nazwa_pliku.'.md5'
, potem wczytuj pliki md5 i porównuj.
Aby przyśpieszyć całość oraz zmniejszyć ryzyko kolizji - porównuj tylko hashe plików, które mają identyczny rozmiar jak ten właśnie wgrywany.
Jeżeli znajdziesz coś, co ma identyczny rozmiar i hash - wciąż jest szansa (choć chyba mniejsza niż trafienie szóstki w totka ;p) na to, że to tylko kolizja - wtedy w sumie można się pokusić o porównanie zawartości plików. Ew. zapisuj dwa hashe (md5 i sha któryś).
Edit: Zgłosiłem Twój post do przeniesienia do działu PHP. Jakby Ci "zniknął" ten topik to właśnie tam go szukaj ;)