My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Links

Esse projeto tem o objetivo de criar uma camada de simples de cache sobre um sistema em php. Você pode estar pensando que a maioria dos sistemas atuais já possui um sistema interno de cache, mas esse sistema funciona independente tornando a performance ainda melhor. É utilizada a url da renderização do script para gravar cachear o arquivo.

Ao ser colocado em cache, por padrão, o arquivo html é compactado tornando ainda melhor a performace. A configuração da classe possui atualmente as opções:

Download

Exemplo de utilização em um sistema Wordpress

/**
 * Criar camada de cache em Wordpress
 */
// Carrega o arquivo de cache
require 'cache.php';

// Global interna do wordpress
define('WP_USE_THEMES', true);

$cache = new Cache();
$cache
	// Seta a pasta de cache
        ->path( dirname(__FILE__) . '/wp-content/cache/cache/' )
	// Usa uma query para limpar todo o cache
	->clean('/(source=clean)/i')
	// Remove o cache das páginas de preview
	->remove('/(preview)/i')
	// Define o tempo padrão de cache para 20 minutos 
	->time(20)
	// Seta um tempo de 3 minutos para uma página 
	->time(3, '/(na-web)/i');
	// Se existe cache
	->load();

// Começa a carregar em cache
ob_start("ob_gzhandler");

// Carrega o wordpress normalmente
require('./wp-blog-header.php');

// Salva o cache ( se necessário )
$cache->save( ob_get_contents() );

Funções padrão

clean() - limpa os arquivos antigos na pasta de cache
clean( boolean ) - limpa o cache
compress ( boolean ) - desativa compressão de html
load() - carrega o arquivo de cache
load( string ) - carrega o arquivo de cache com alguma variável adicional
path( string ) - pasta dos arquivos de cache
remove( regexp ) - remove o cache de algumas urls em particular
save( string ) - salva o arquivo de cache
time( int ) - seta o valor padrão de cache (minutos)
time( int, regexp ) - seta o valor padrão de cache (minutos) para algumas urls

Variáveis públicas

cached(boolean) - se o arquivo foi enviado ao cache
compressed - se o html foi comprimido
file_time - a data de criação do arquivo que foi retornado do cache
html - código do cache
time - tempo (segundos) que ficará em cache
Powered by Google Project Hosting