Download the PHP package tarcisiojr/php-cache without Composer
On this page you can find all versions of the php package tarcisiojr/php-cache. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download tarcisiojr/php-cache
More information about tarcisiojr/php-cache
Files in tarcisiojr/php-cache
Package php-cache
Short Description Sistema para cache de métodos baseado em https://github.com/spatie/once
License
Informations about the package php-cache
PHP-CACHE
Biblioteca para baseada na ideia do pacote once. Esta biblioteca permite cachear métodos podendo utilizar diversas estratégias para o comportamento do cache.
Segue abaixo um exemplo simples de utilização:
Instalação
Editar seu arquivo composer.json e adicionar a sequinte dependência:
Interface para sistemas de Cache
Algumas estratégias de ache utilizam um sistema próprio para cachear os valores. Estes sistemas podem ser alterados configurando a própria estrategia através de uma implementação da interface .
Como recurso básico existem duas implementações:
-
: neste sistema de cache persisente, onde os valores são salvos em um arquivo JSON configurado, os valores serão matidos enquanto o arquivo não for excluídos e/ou seus valores expurgados.
- : neste sistema os valores são persistidos apenas durante a execução do script, utilizando-se um array estático para mantê-lo.
Uso
Configure os sistemas de cache, se desejar:
-
: cache utilizado para armazenar os estados das estratégias. Caso deseje manter este estado através das execuções dos scripts, este deve ser um sistema de cache persistente.
-
: cache persistente utilizado pela estratégia Statefull.
- : cache de request utilizado pela estratégia Stateless.
Em seguida basta selecionar o método (podendo ser static ou não) e/ou função a ser cacheada, utilize o método estático para criar uma instância do cache.
A partir da instância de cache você poderá selecionar a estrágias de armazenado e expiração, bem como escopo.
Por fim, para o obter o valor cachead (ou não) basta executar o método .
Exemplo:
Respeitando as estratégias configuradas, todas a vezes que método da classe
for executado, a partir da segunda execução, o valor retornado será idêntico ao primeiro valor retornado. Este valor se
será expirado após 10 segundos devido a extratégia , portanto após este tempo será retornado um novo valor.