我想知道还是不知道脏字符串。我使用了这段代码:
const ALLOWABLE_TAGS = 'p,strong,em,u,s,blockquote,a,br';
const ALLOWABLE_ATTRS = 'a.href,*.style';
$config = HTMLPurifier_Config::createDefault();
$config->set('HTML.AllowedElements', ALLOWABLE_TAGS);
$config->set('HTML.AllowedAttributes', ALLOWABLE_ATTRS);
$purifier = new HTMLPurifier($config);
$value = '<p style="text-align: center;">Hello!</p>';
$purified_value = $purifier->purify($value);
if (mb_strlen($value) !== mb_strlen($purified_value)) {
echo 'string is dirty';
} else {
echo 'string is clean';
}
但是它不起作用,因为HTMLPurifier删除了空格:
$value: <p style="text-align: center;">Hello!</p>
$purified_value: <p style="text-align:center;">Hello!</p>
text-align:
和center;
之间的空格。
我怎么知道字符串是否脏?