AD

¿Ya dominas lo básico? Un curso estructurado de PHP es la vía rápida para dar el salto.

Ver cursos de PHP en Udemy

Enlace de afiliado. No te cuesta nada extra.

🐘Lecciones de PHP
Lección 38 / 68

Acelerar cálculos con memoización (caché)

En esta lección evitarás repetir un cálculo guardando los resultados ya obtenidos.

Se usa un array como caché: antes de calcular se mira si la clave ya está, y después de calcular se guarda.

El código de ejemplo calcula el mismo valor dos veces, y en la segunda avisa de que lo recuperó de la caché.

El efecto es espectacular con la recursión: el Fibonacci recursivo sin caché repite los mismos subcálculos y tarda un tiempo exponencial; con caché pasa a ser lineal.

Hay una particularidad de PHP que limita esta técnica: cada petición web empieza de cero. Un array en memoria no sobrevive a la siguiente petición, así que la memoización solo ayuda dentro de un mismo script. Para conservar resultados entre peticiones se usa Redis, Memcached o APCu.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar PHP directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)