code: public function set($key, $var, $Tags = array(), $expire = null)
      {
          if ($expire) {
              $expire+=TagcacheTime::time();
          }
          if (is_array($Tags)) {
              array_push($Tags, self::TAG_CLEAR_ALL);
              foreach ($Tags as $Tag) {
                  if ($this->getTagUpdateTimestamp($Tag) === false) {
                      $this->setRaw($this->buildKey(self::TAG_PREFIX . $Tag), TagcacheTime::time(), 0);
                  }
              }
          }
          $Obj = new TagcacheObj($var, $Tags, $expire);
  
          return $this->setRaw($this->buildKey($key), $Obj, $expire);
      }
docs: Store Cache
  @param string $key
  @param mixed  $var
  @param array  $Tags
  @param float  $expire