Iterators en PHP
En PHP existen, a parte de los arrays, una serie de estructuras de datos que nos pueden facilitar la labor a la hora de trabajar. Normalmente no son muy necesarios y con los arrays nos sobra, pero nunca está del todo mal conocerlos y saber que por ejemplo su uso de memoria suele ser mejor (como se observa en los benchmarks del artículo).
- Fixed Arrays (SplFixedArray): arrays de longitud fija, muy útiles cuando el tamaño del array es siempre el mismo y es necesario que tenga siempre todos los elementos aunque estén vacios.
- Listas (SplDoublyLinkedList): listas de elementos que permite recorrerlas en ambos sentidos
- Pilas (SplStack): el último que entra primero que sale (LIFO)
- Colas (SplQueue): el primero que entra primero que sale (FIFO)
- Heap (SplHeap): traducido como montículos, son árboles de conjuntos de datos ordenados en el que el padre tiene un valor superior a los hijos
- Cola de prioridades (SplPriorityQueue): igual que las colas pero los elementos se ordenan según una prioridad (ej: la lista de espera de Urgencias)
- Tablas hash (SplObjectStorage): muy similar a cómo funcionan los arrays en PHP.
Interesante ver los benchmarks que nos muestra al final del artículo
Genial!
Estoy estudiando estructuras de datos en Java por la facultad y he estado mirando la Doc de PHP para ver si encontraba esto mismo que publicas pero sin suerte.
Una vez estudiadas estas estructuras me he dado cuenta de que pueden ser muy útiles en algunas aplicaciones en concreto, sobre todo las colas con prioridad y los árboles.
Gracias!
Hola Alberto
Espero que te haya sido útil, ya me dirás que tal.
Saludos