如何删除php上的标签html
我的数据:
$a="<div style='color: blue;'>Hallo</div>
<div>yas!</div><img src='blabla/aa/img.png'> im fine
<span> yes</span> <a href='aaa.com'>link</a>";
如何删除所有div和span
<div style='color: blue;'></div>, <div></div> and <span></span>
而不是删除
<img src='blabla/aa/img.png'> and <a href='aaa.com'>link</a>
请帮帮我
答案 0 :(得分:2)
如何使用strip_tags
:
$a="<div style='color: blue;'>Hallo</div>"
."<div>yas!</div><img src='blabla/aa/img.png'> im fine<span> yes</span>";
$clean_html = strip_tags($a, "<img><a>");
答案 1 :(得分:2)
如果您有一个白色的元素列表,那么您可以使用strip_tags()
函数http://php.net/manual/en/function.strip-tags.php。
另一种选择是使用http://htmlpurifier.org
白名单
http://htmlpurifier.org/live/configdoc/plain.html#HTML.AllowedElements
黑名单
http://htmlpurifier.org/live/configdoc/plain.html#HTML.ForbiddenElements
答案 2 :(得分:0)
你的句子无法解释你的目标是什么。看看这个。
substr - 返回字符串的一部分
说明
string substr ( string $string , int $start [, int $length ] )
返回由start和length参数指定的字符串部分。
参数
<强>字符串强>
输入字符串。必须是一个字符或更长。
开始强>
如果start为非负数,则返回的字符串将从字符串的起始位置开始,从零开始计数。例如,在字符串'abcdef'中,位置0的字符是'a',位置2的字符是'c',依此类推。
如果start为负数,则返回的字符串将从字符串末尾的起始字符开始。
如果string小于或等于开始字符长,则返回FALSE。
<强>实施例强>
示例 - 基本substr()用法
<?php
echo substr('abcdef', 1); // bcdef
echo substr('abcdef', 1, 3); // bcd
echo substr('abcdef', 0, 4); // abcd
echo substr('abcdef', 0, 8); // abcdef
echo substr('abcdef', -1, 1); // f
// Accessing single characters in a string
// can also be achieved using "square brackets"
$string = 'abcdef';
echo $string[0]; // a
echo $string[3]; // d
echo $string[strlen($string)-1]; // f
?>
或者
如果你想删除HTML标签并且只允许其中一些标签你可以使用像这样的strip_tags函数
$a="<div style='color: blue;'>Hallo</div>"."<div>yas!</div><img src='blabla/aa/img.png'> im fine<span> yes</span>";
$ clean_html = strip_tags($ a,“”);
这将返回您输入的文字$ text,没有标签,除了&amp;标签您可以阅读有关strip_tags
的更多信息答案 3 :(得分:0)
你可以使用它:
<?php
$a="<div style='color: blue;'>Hallo</div><div>yas!</div><img src='blabla/aa/img.png'> im fine<span> yes</span>";
echo strip_tags($a,"<img><a>");
?>
答案 4 :(得分:0)
http://php.net/manual/en/function.preg-replace.php
$a="<div style='color: blue;'>Hallo</div>
<div>yas!</div><img src='blabla/aa/img.png'> im fine<span> yes</span>";
$find=[
"/<div style='color: blue;'>.*.<\/div>/",
"/<div>.*.<\/div>/",
"/<span>.*.<\/span>/"
];
echo preg_replace($find,"",$a);