Ejemplo n.º 1
0
 /**
  * Fetch an Interwiki object
  * 
  * @return Interwiki Object, or null if not valid
  * @param $prefix string Interwiki prefix to use
  */
 public static function fetch($prefix)
 {
     global $wgContLang;
     if ($prefix == '') {
         return null;
     }
     $prefix = $wgContLang->lc($prefix);
     if (isset(self::$smCache[$prefix])) {
         return self::$smCache[$prefix];
     }
     global $wgInterwikiCache;
     if ($wgInterwikiCache) {
         $iw = Interwiki::getInterwikiCached($prefix);
     } else {
         $iw = Interwiki::load($prefix);
         if (!$iw) {
             $iw = false;
         }
     }
     if (self::CACHE_LIMIT && count(self::$smCache) >= self::CACHE_LIMIT) {
         reset(self::$smCache);
         unset(self::$smCache[key(self::$smCache)]);
     }
     self::$smCache[$prefix] = $iw;
     return $iw;
 }