Funciones para recorrer vectores en php
En PHP cada vector tiene asociado un puntero interno que apunta a un elemento del vector y que puede ser usado para recorrer vectores y otras operaciones, las funciones que operan con el puntero interno son:
reset(array); Resetea el puntero interno al principio del array.
end(array); Setea el puntero interno apuntando al último elemento del array
next(array); Mueve el puntero al proximo elemento del array
prev(array); Mueve el puntero al último elemento del array
current(array); Devuelve el elemento apuntado actualmente por el puntero interno del array.
key(array); Devuelve la clave (índice) del elemento apuntado actualmente por el puntero interno del array, si es un vector asociativo devuelve la clave del elemento actual. Si es un vector común devuelve el numero de índice del elemento actual.
array=each(array) Devuelve un vector clave-valor con los valores correspondientes al elemento actual del array y además mueve el puntero al elemento siguiente, si es un vector asociativo devuelve clave-valor, si es un vector común devuelve indice-valor.
Each suele usarse en conjunto con list para recorrer un vector:
Ejemplo:
while(list($clave,$valor)=each($vector)) {
//Hacer algo
}
Fuente: Documento Generación de web sites dinámicos usando PHP