code: public static function encodeEmail($strString)
  	{
  		if (strpos($strString, '@') === false)
  		{
  			return $strString;
  		}
  
  		$arrEmails = static::extractEmail($strString, Config::get('allowedTags'));
  
  		foreach ($arrEmails as $strEmail)
  		{
  			$strEncoded = '';
  			$arrCharacters = Utf8::str_split($strEmail);
  
  			foreach ($arrCharacters as $strCharacter)
  			{
  				$strEncoded .= sprintf((random_int(0, 1) ? '&#x%X;' : '&#%s;'), Utf8::ord($strCharacter));
  			}
  
  			$strString = str_replace($strEmail, $strEncoded, $strString);
  		}
  
  		return str_replace('mailto:', '&#109;&#97;&#105;&#108;&#116;&#111;&#58;', $strString);
  	}
docs: Encode all e-mail addresses within a string
  
  @param string $strString The string to encode
  
  @return string The encoded string