Adicionar cabeçalhos de cache do lado do cliente a imagens criadas usando GD do PHP

Todos nós sabemos que o cache é uma boa ideia sempre que possível. Criar imagens usando a biblioteca GD do PHP também não é uma expectativa (a menos, é claro, que você não queira que as imagens sejam armazenadas em cache como em casos como imagens do tipo captcha).

Felizmente, é muito fácil configurar o cache do lado do servidor e do lado do cliente. Para adicionar seus cabeçalhos de cache para o cache do cliente, é tão simples quanto o seguinte (observe que estamos assumindo que desejamos armazenar o arquivo em cache por 30 minutos antes que uma nova versão seja obtida):

header("Content-type: image/png");
header
('Last-Modified: '.gmdate('r', time()));
header
('Expires: '.gmdate('r', time() + 1800));

Você realmente deve fazer esse tipo de coisa sempre que possível para economizar recursos e reduzir o uso de largura de banda. Isso também significa que as imagens serão renderizadas mais rapidamente para os usuários, o que é sempre uma vantagem.