src/helpers/BaseHtmlPurifier.php
public static function process(string $content, $config = null): string
    {
        $configInstance = static::createConfig($config);
        $configInstance->autoFinalize = false;

        return \HTMLPurifier::instance($configInstance)->purify($content);
    }
public static function process(string $content, $config = null): string
    {
        $configInstance = static::createConfig($config);
        $configInstance->autoFinalize = false;

        return \HTMLPurifier::instance($configInstance)->purify($content);
    }
public static function process ( string $ content , $ config = null ) : string { $ configInstance = static :: createConfig ( $ config ) ; $ configInstance -> autoFinalize = false ; return \ HTMLPurifier :: instance ( $ configInstance ) -> purify ( $ content ) ; }
Passes markup through HTMLPurifier making it safe to output to end user.

@param string $content The HTML content to purify
@param array|\Closure|null $config The config to use for HtmlPurifier.
If not specified or `null` the default config will be used.
You can use an array or an anonymous function to provide configuration options:

- An array will be passed to the `HTMLPurifier_Config::create()` method.
- An anonymous function will be called after the config was created.
The signature should be: `function($config)` where `$config` will be an
instance of `HTMLPurifier_Config`.

Here is a usage example of such a function:

```php
// Allow the HTML5 data attribute `data-type` on `img` elements.
$content = HtmlPurifier::process($content, function ($config) {
$config->getHTMLDefinition(true)
->addAttribute('img', 'data-type', 'Text');
});
```
@return string the purified HTML content.
@throws InvalidConfigException
Passes markup through HTMLPurifier making it safe to output to end user .