'document.cookie', 'document\.write' => 'document.write', '\.parentNode' => '.parentNode', '\.innerHTML' => '.innerHTML', '\-moz\-binding' => '–moz–binding', '<' => '<', '>' => '>', ]; /** * Encode Cross Site Scripting * * @param string $string * * @return string */ public static function encode(string $string) : string { $secBadChars = self::$scriptBadChars; if( ! empty($secBadChars) ) { foreach( $secBadChars as $badChar => $changeChar ) { $badChar = trim($badChar, '/'); $string = preg_replace('/'.$badChar.'/xi', $changeChar, $string); } } return $string; } }