', //open tag or single tag variant '', //close tag '<' . $ex . ' />', //single tag variant '<' . $ex . '/>', //single tag variant ]; foreach ($allowed_tag_variants as $tag) { $patterns[] = '~' . preg_quote(e($tag), '~') . '~'; $tags[] = $tag; } } return preg_replace($patterns, $tags, e($str)); } }