当前位置: 首页>>代码示例>>PHP>>正文


PHP CacheItemInterface::getTags方法代码示例

本文整理汇总了PHP中Psr\Cache\CacheItemInterface::getTags方法的典型用法代码示例。如果您正苦于以下问题:PHP CacheItemInterface::getTags方法的具体用法?PHP CacheItemInterface::getTags怎么用?PHP CacheItemInterface::getTags使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Psr\Cache\CacheItemInterface的用法示例。


在下文中一共展示了CacheItemInterface::getTags方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: storeItemInCache

 /**
  * {@inheritdoc}
  */
 protected function storeItemInCache(CacheItemInterface $item, $ttl)
 {
     $key = $this->getHierarchyKey($item->getKey());
     $data = serialize([true, $item->get(), $item->getTags()]);
     if ($ttl === null || $ttl === 0) {
         return $this->cache->set($key, $data);
     }
     return $this->cache->setex($key, $ttl, $data);
 }
开发者ID:php-cache,项目名称:redis-adapter,代码行数:12,代码来源:RedisCachePool.php

示例2: save

 /**
  * {@inheritdoc}
  */
 public function save(ItemInterface $item)
 {
     $ttl = $item->getTtlInSecond();
     $this->_tags = $item->getTags();
     $item->setHit(true);
     $success = $this->cache_adapter->save($item->get(), $item->getKey(), $this->_tags, is_null($ttl) ? 0 : $ttl);
     $item->setHit($success);
     return $this;
 }
开发者ID:MacFJA,项目名称:apix-cache,代码行数:12,代码来源:TaggablePool.php

示例3: storeItemInCache

 /**
  * {@inheritdoc}
  * @throws \InvalidArgumentException
  * @throws \League\Flysystem\FileNotFoundException
  * @throws \League\Flysystem\FileExistsException
  */
 protected function storeItemInCache(CacheItemInterface $item, $ttl)
 {
     $file = $this->getFilePath($item->getKey());
     if ($this->filesystem->has($file)) {
         $this->filesystem->delete($file);
     }
     $tags = [];
     if ($item instanceof TaggableItemInterface) {
         $tags = $item->getTags();
     }
     return $this->filesystem->write($file, serialize([$ttl === null ? null : time() + $ttl, $item->get(), $tags]));
 }
开发者ID:swayok,项目名称:alternative-laravel-cache,代码行数:18,代码来源:HierarchialFilesystemCachePool.php

示例4: driverWrite

 /**
  * @param \Psr\Cache\CacheItemInterface $item
  * @return mixed
  * @throws \InvalidArgumentException
  */
 protected function driverWrite(CacheItemInterface $item)
 {
     /**
      * Check for Cross-Driver type confusion
      */
     if ($item instanceof Item) {
         try {
             $result = (array) $this->getCollection()->update(['_id' => $item->getKey()], ['$set' => [self::DRIVER_EDATE_WRAPPER_INDEX => $item->getTtl() > 0 ? new MongoDate(time() + $item->getTtl()) : new MongoDate(time()), self::DRIVER_DATA_WRAPPER_INDEX => new MongoBinData($this->encode($item->get()), MongoBinData::BYTE_ARRAY), self::DRIVER_TAGS_WRAPPER_INDEX => new MongoBinData($this->encode($item->getTags()), MongoBinData::BYTE_ARRAY)]], ['upsert' => true, 'multiple' => false]);
         } catch (MongoCursorException $e) {
             return false;
         }
         return isset($result['ok']) ? $result['ok'] == 1 : true;
     } else {
         throw new \InvalidArgumentException('Cross-Driver type confusion detected');
     }
 }
开发者ID:jigoshop,项目名称:Jigoshop2,代码行数:21,代码来源:Driver.php

示例5: storeItemInCache

 /**
  * {@inheritdoc}
  */
 protected function storeItemInCache(CacheItemInterface $item, $ttl)
 {
     $tags = [];
     if ($item instanceof TaggableItemInterface) {
         $tags = $item->getTags();
     }
     $data = serialize([$ttl === null ? null : time() + $ttl, $item->get(), $tags]);
     $file = $this->getFilePath($item->getKey());
     if ($this->filesystem->has($file)) {
         // Update file if it exists
         return $this->filesystem->update($file, $data);
     }
     try {
         return $this->filesystem->write($file, $data);
     } catch (FileExistsException $e) {
         // To handle issues when/if race conditions occurs, we try to update here.
         return $this->filesystem->update($file, $data);
     }
 }
开发者ID:php-cache,项目名称:filesystem-adapter,代码行数:22,代码来源:FilesystemCachePool.php

示例6: storeItemInCache

 /**
  * {@inheritdoc}
  */
 protected function storeItemInCache(CacheItemInterface $item, $ttl)
 {
     if ($ttl === null) {
         $ttl = 0;
     }
     $tags = [];
     if ($item instanceof TaggableItemInterface) {
         $tags = $item->getTags();
     }
     $data = serialize([true, $item->get(), $tags]);
     return $this->cache->save($item->getKey(), $data, $ttl);
 }
开发者ID:php-cache,项目名称:doctrine-adapter,代码行数:15,代码来源:DoctrineCachePool.php


注:本文中的Psr\Cache\CacheItemInterface::getTags方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。