code: public static function get($strKey, $blnDecodeEntities=false, $blnKeepUnused=false)
  	{
  		if (!isset($_GET[$strKey]))
  		{
  			return null;
  		}
  
  		$strCacheKey = $blnDecodeEntities ? 'getDecoded' : 'getEncoded';
  
  		if (!isset(static::$arrCache[$strCacheKey][$strKey]))
  		{
  			$varValue = $_GET[$strKey];
  
  			$varValue = static::decodeEntities($varValue);
  			$varValue = static::xssClean($varValue, true);
  			$varValue = static::stripTags($varValue);
  
  			if (!$blnDecodeEntities)
  			{
  				$varValue = static::encodeSpecialChars($varValue);
  			}
  
  			$varValue = static::encodeInsertTags($varValue);
  
  			static::$arrCache[$strCacheKey][$strKey] = $varValue;
  		}
  
  		// Mark the parameter as used (see #4277)
  		if (!$blnKeepUnused)
  		{
  			unset(static::$arrUnusedGet[$strKey]);
  		}
  
  		return static::$arrCache[$strCacheKey][$strKey];
  	}
docs: Return a $_GET variable
  
  @param string  $strKey            The variable name
  @param boolean $blnDecodeEntities If true, all entities will be decoded
  @param boolean $blnKeepUnused     If true, the parameter will not be marked as used (see #4277)
  
  @return mixed The cleaned variable value