<?php
$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo strip_tags($text);
//Test paragraph. Other text
// Allow <p> and <a>
echo strip_tags($text, '<p><a>');
//<p>Test paragraph.</p> <a href="#fragment">Other text</a>
// as of PHP 7.4.0 the line above can be written as:
// echo strip_tags($text, ['p', 'a']);
?>
<?php
function strip_tags_content($text, $tags = '', $invert = FALSE) {
preg_match_all('/<(.+?)[s]*/?[s]*>/si', trim($tags), $tags);
$tags = array_unique($tags[1]);
if(is_array($tags) AND count($tags) > 0) {
if($invert == FALSE) {
return preg_replace('@<(?!(?:'. implode('|', $tags) .'))(w+).*?>.*?</1>@si', '', $text);
}
else {
return preg_replace('@<('. implode('|', $tags) .').*?>.*?</1>@si', '', $text);
}
}
elseif($invert == FALSE) {
return preg_replace('@<(w+).*?>.*?</1>@si', '', $text);
}
return $text;
}
?>
<?php
$str = "<h1>Hello WorldÆØÅ!</h1>";
# Remove all HTML tags and all characters with ASCII value > 127, from a string:
$newstr = filter_var($str, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);
echo $newstr;
# Result: Hello World!