AM Web develpment & design

am web design & development

  • Diseño web
  • Desarrollo personalizado con PHP
  • Maquetación con HTML, CSS y JavaScript
  • Estrategias de marketing online
  • Redacción de contenidos multilingües
  • Usabilidad y accesibilidad web
  • Estadares recomendados por W3C
  • Fotografía

Imágenes embebidas con PHP

Está demostrado que el tiempo de carga de una página web depende en un 80% del cliente, es decir, el usuario. Las imágenes es uno de los elementos de la web que más penaliza el tiempo de carga de estas. Existe varias técnicas para reducirlo considerablemente. Hoy me voy a centrar en uno, imágenes embebidas.

Esta técnica consiste en incluir los bytes de la imagen utilizando el esquema data, al igual que usamos el esquema http para indicar las URL o mailto para el correo electrónico.

La que voy a mostrar consiste en realizar un array asociativo con las URL de las imágenes que se quieren cargar y para ello nada mejor que un ejemplo práctico.

En un archivo PHP tenemos el siguiente código:

<?php
$images_web = array (
0 => base64_encode(file_get_contents("imagen1.png")),
1 => base64_encode(file_get_contents("imagen2.png")),
2 => base64_encode(file_get_contents("imagen3.png"))
);    
?>

Con esto codificamos la imagen en base64. Para utilizarlas solo tendremos que poner, por ejemplo, en nuestra etiqueta <img> el siguiente código en el atributo src.

<img src="data:image/png;base64,<?php echo $images_web [0];?>" alt="Descripción"/>

También podemos utilizarlo en nuestra hoja de estilos CSS si la hemos construido sobre un archivo PHP. Ya escribí un post llamado Variables en CSS con PHP donde se describe este proceso.

Para usar las imágenes anteriores en nuestro CSS pondré otro ejemplo:

background-image:url(data:image/png;base64,<?php echo $images_fweb [0];?>);

Como bien he dicho anteriormente esta técnica tiene una gran ventaja como es la reducción de tiempo de carga de una web, pero también inconvenientes, y es que  los navegadores Internet Explorer 6 y 7 no son capaces de procesar el esquema data, y en el caso de Internet Explorer 8 solo las soporta en los CSS.

 

Escribir un comentario

¡Gracias por dejarnos tus comentarios! — por favor intenta mantener tu opinión relacionada con la anotación, no usar insultos, agresiones, o faltas de respeto al autor y otros participantes de la discusión, en caso de no hacerlo tu comentario podría ser borrado.

Búsqueda en el blog

Post recientes

Últimos tweet



Iconos Sociales Icono Facebook Icono RSS Icono de twitter Icono de Google
Logo de Creative Commons

AM Web development & design por Andrés Moreno García se encuentra bajo una Licencia Creative Commons Reconocimiento 3.0 Unported.
Basada en una obra en www.andresmorenostudio.com.
Permisos que vayan más allá de lo cubierto por esta licencia pueden encontrarse en http://www.andresmorenostudio.com.

Licencia Creative Commons