0

HTMLタグを削除するスクリプトがあります。次のような場合に問題なく動作します。

<p>Test</p>

また

<p><b>Test</b></p>

. これは私のスクリプトです:

function safeStrip($text) {
    $text = preg_replace('/</', ' <', $text);
    $text = preg_replace('/>/', '> ', $text);
    $desc = strip_tags($text);
    $desc = preg_replace('/  /', ' ', $desc);
    return $desc;
}

ただし、ユーザータイプの場合

<pTest</p>

また

<p Test</p>

また

<p>Test/p>

....スクリプトにより、文字列が空白になります。ユーザーが html タグ (完全なタグまたは不完全なタグ) を入力した場合。スクリプトが識別して削除します。

4

2 に答える 2

0

すべてのタグを削除したい場合strip_tagsは、行く方法です。一部だけを削除したい場合は、HTMLPurifierをご覧ください。

<pTest</p>あなたのケースに関しては、との期待される結果は何<p Test</p>ですか?

于 2013-08-13T05:33:06.297 に答える
0

これを使ってみて、

$text = '<p>Test</p>';
echo strip_tags($text);

これは、HTML タグを削除するのに役立ちます。

于 2013-08-13T04:59:37.827 に答える