缓存

缓存服务提供器与组件主要依赖于: Symfony Cache,具体操作保持一致。

提供辅助函数: cache(),函数返回原始 Symfony\Component\Cache\Adapter\AbstractAdapter 对象。目前支持文件缓存、Redis缓存,欢迎有志之士提供各种缓存提供器。

配置信息:

  1. <?php
  2. return [
  3. 'adapter' => \Symfony\Component\Cache\Adapter\FilesystemAdapter::class,
  4. 'params' => [
  5. ],
  6. ];

函数会根据配置的缓存配置进行读取,adapter 适配器是比选参数,params 保持为空,在选择用文件缓存的情况下。

Redis 缓存

  1. <?php
  2. return [
  3. 'adapter' => \Symfony\Component\Cache\Adapter\RedisAdapter::class,
  4. 'params' => [
  5. 'dsn' => 'redis://pass@host/dbindex',
  6. ],
  7. ];

仅需要通过配置 dsn 选项,redis 适配器会自动处理连接。

操作

  1. $cache = cache();
  2. $numProducts = $cache->getItem('stats.num_products');
  3. // assign a value to the item and save it
  4. $numProducts->set(4711);
  5. $cache->save($numProducts);
  6. // retrieve the cache item
  7. $numProducts = $cache->getItem('stats.num_products');
  8. if (!$numProducts->isHit()) {
  9. // ... item does not exists in the cache
  10. }
  11. // retrieve the value stored by the item
  12. $total = $numProducts->get();
  13. // remove the cache item
  14. $cache->deleteItem('stats.num_products');

下一节: 命令行