burnin, "should" is a bit strong eh? My original code works. The line "if [ -f $i ];." Actually, your way convolutes it, its redudant. If you added "-type f," you could get rid of the "if [ -f $i ]," business.
Its a style choice, I prefer to add a restriction that way.