in reply to Re: foreach problem with shift
in thread foreach problem with shift

Read perlsyn about foreach:

If any part of LIST is an array, foreach will get very confused if you add or remove elements within the loop body, for example with splice. So don't do that.