original_string: public static function forever($arTags, $sKeys, &$arValue)
      {
          $sCacheDriver = config('cache.default');
          if(!empty($arTags)) {
              if($sCacheDriver == 'redis') {
                  Cache::tags($arTags)->forever($sKeys, $arValue);
                  return;
              } else {
                  $sKeys = implode('_', $arTags).'_'.$sKeys;
              }
          }
  
          Cache::forever($sKeys, $arValue);
      }
code: public static function forever($arTags, $sKeys, &$arValue)
      {
          $sCacheDriver = config('cache.default');
          if(!empty($arTags)) {
              if($sCacheDriver == 'redis') {
                  Cache::tags($arTags)->forever($sKeys, $arValue);
                  return;
              } else {
                  $sKeys = implode('_', $arTags).'_'.$sKeys;
              }
          }
  
          Cache::forever($sKeys, $arValue);
      }
code_tokens: public static function forever ( $ arTags , $ sKeys , & $ arValue ) { $ sCacheDriver = config ( 'cache.default' ) ; if ( ! empty ( $ arTags ) ) { if ( $ sCacheDriver == 'redis' ) { Cache :: tags ( $ arTags ) -> forever ( $ sKeys , $ arValue ) ; return ; } else { $ sKeys = implode ( '_' , $ arTags ) . '_' . $ sKeys ; } } Cache :: forever ( $ sKeys , $ arValue ) ; }
docstring: Forever cache data
  @param array $arTags
  @param string $sKeys
  @param mixed $arValue
docstring_tokens: Forever cache data