| Server IP : 139.59.63.204 / Your IP : 216.73.217.62 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ubuntu-s-1vcpu-1gb-blr1-01 6.8.0-110-generic #110-Ubuntu SMP PREEMPT_DYNAMIC Thu Mar 19 15:09:20 UTC 2026 x86_64 User : root ( 0) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/billing/vendor/league/commonmark/src/Util/ |
Upload File : |
<?php
declare(strict_types=1);
/*
* This file is part of the league/commonmark package.
*
* (c) Colin O'Dell <colinodell@gmail.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace League\CommonMark\Util;
use League\CommonMark\Exception\InvalidArgumentException;
/**
* @psalm-immutable
*/
final class HtmlFilter
{
// Return the entire string as-is
public const ALLOW = 'allow';
// Escape the entire string so any HTML/JS won't be interpreted as such
public const ESCAPE = 'escape';
// Return an empty string
public const STRIP = 'strip';
/**
* Runs the given HTML through the given filter
*
* @param string $html HTML input to be filtered
* @param string $filter One of the HtmlFilter constants
*
* @return string Filtered HTML
*
* @throws InvalidArgumentException when an invalid $filter is given
*
* @psalm-pure
*/
public static function filter(string $html, string $filter): string
{
switch ($filter) {
case self::STRIP:
return '';
case self::ESCAPE:
return \htmlspecialchars($html, \ENT_NOQUOTES);
case self::ALLOW:
return $html;
default:
throw new InvalidArgumentException(\sprintf('Invalid filter provided: "%s"', $filter));
}
}
}