如何从字符串中删除所有标签?

时间:2015-12-22 13:40:07

标签: php regex security

我有一个包含一些标签的字符串,就像这样;

<div id="box1" class="kaesten">test1</div>
<div id="box2" class="kaesten">test2</div>
<div id="box3" class="kaesten">test3</div>
<div id="box4" class="kaesten">test4</div>

我想要这个:

$str = '<i>this</i> <u class="anything">is</u> a <b>string</b>';

实际上,我想在$newstr = 'this is a string'; <之间选择所有内容,然后将其替换为>。我这样做的目标是防御 CORS CSRF 漏洞。我怎么能这样做?

1 个答案:

答案 0 :(得分:8)

使用strip_tags功能将为您做到这一点

<?php
$str = '<i>this</i> <u class="anything">is</u> a <b>string</b>';
echo strip_tags($str);

结果将是

this is a string

此处还有REGEX版本:

echo preg_replace('/<[^>]*>/', '', $str); // output: this is a string