think-cache

think-cache est un composant extrait du framework thinkphp, avec ajout d'une fonction de pool de connexions, prenant en charge automatiquement les environnements de coroutine et non-coroutine.

Attention
Le manuel actuel est pour la version v2 de webman. Si vous utilisez la version v1 de webman, veuillez consulter le manuel de la version v1

Installation

composer require -W webman/think-cache

Après l'installation, vous devez redémarrer (reload est inefficace)

Fichier de configuration

Le fichier de configuration est config/think-cache.php

Utilisation

  <?php
  namespace app\controller;

  use support\Request;
  use support\think\Cache;

  class UserController
  {
      public function db(Request $request)
      {
          $key = 'test_key';
          Cache::set($key, rand());
          return response(Cache::get($key));
      }
  }

Interfaces fournies

// Définir le cache
Cache::set('val','value',600);
// Vérifier si le cache est défini
Cache::has('val');
// Obtenir le cache
Cache::get('val');
// Supprimer le cache
Cache::delete('val');
// Effacer le cache
Cache::clear();
// Lire et supprimer le cache
Cache::pull('val');
// Écrire si non existant
Cache::remember('val',10);

// Pour les données de type numérique, vous pouvez utiliser
// Incrémenter le cache de +1
Cache::inc('val');
// Incrémenter le cache de +5
Cache::inc('val',5);
// Décrémenter le cache de -1
Cache::dec('val');
// Décrémenter le cache de -5
Cache::dec('val',5);

// Utiliser des étiquettes de cache
Cache::tag('tag_name')->set('val','value',600);
// Supprimer les données de cache sous une étiquette
Cache::tag('tag_name')->clear();
// Prend en charge plusieurs étiquettes
Cache::tag(['tag1','tag2'])->set('val2','value',600);
// Supprimer les données de cache sous plusieurs étiquettes
Cache::tag(['tag1','tag2'])->clear();

// Utiliser plusieurs types de cache
$redis = Cache::store('redis');

$redis->set('var','value',600);
$redis->get('var');